with open('./第{}页.txt'.format(i), 'w', encoding='utf-8') as fp: for num in dish_urls: new_urls=f'https://www.haochu.com{num}' #把菜品具体网址作为新url,获取每道菜所需的食材 print(new_urls) response2=requests.get(url=new_urls,headers=headers) html_data2 = etree.HTML(response2.text) #新网址的html——data2 ints_names = html_data2.xpath('//div[@class="ints-cover"]/img/@alt')#菜品所需食材 print(ints_names) for dish_name, dish_heat,dish_url in zip(dish_names, dish_heats,dish_urls): dish = f'{dish_name},{dish_heat},{ints_names},https://www.haochu.com{dish_url}\n' fp.write(dish),为什么ints_names只有一个
时间: 2024-03-29 13:36:36 浏览: 60
根据你提供的代码,这段代码的作用是爬取某个网站上的菜品信息,并将菜品名、热量、所需食材、具体网址等信息写入到文本文件中。在这段代码中,ints_names 是通过解析网页获取的菜品所需食材信息,而在你的代码中,ints_names 只是被定义在了第一个 for 循环中,并没有在第二个 for 循环中进行遍历,因此只有一个值。你需要将获取到的 ints_names 通过 for 循环遍历,并将每个遍历到的值写入到文本文件中,这样才能保证每个菜品的所需食材信息都能够被正确地写入到文本文件中。
阅读全文