千家信息网

Python怎么爬取食品商务网蔬菜价格数据

发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,Python怎么爬取食品商务网蔬菜价格数据,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。前言蔬菜是指可以做菜、烹饪成为食
千家信息网最后更新 2024年11月22日Python怎么爬取食品商务网蔬菜价格数据

Python怎么爬取食品商务网蔬菜价格数据,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

前言

蔬菜是指可以做菜、烹饪成为食品的一类植物或菌类,蔬菜是人们日常饮食中必不可少的食物之一。
近期,蔬菜价格有所上涨,引起广泛关注。"双节"将至,物价走势如何?
9月16日,国家发改委召开9月份例行新闻发布会。针对蔬菜价格上涨相关情况,国家发改委新闻发言人孟玮表示,蔬菜的生长周期比较短,后期随着极端天气减少,秋季蔬菜陆续上市,市场供应有望在较短时间内恢复,鲜菜价格将随之回落。

项目目标

爬取食品商务网蔬菜价格数据
受害网址

https://price.21food.cn/

爬虫代码

导入工具

import requestsimport parselimport csvimport time

解析网站,爬取数据

for page in range(1, 19):    time.sleep(1)    url = 'https://price.21food.cn/guoshu-p{}.html'.format(page)    headers = {        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'    }    response = requests.get(url=url, headers=headers)    selector = parsel.Selector(response.text)    lis = selector.css('.gs_top_t2_left div:nth-child(1) .sjs_top_cent_erv ul li')    dit = {}    for li in lis:        name = li.css('a::text').get()        dit['品种'] = name        price = li.css('td span::text').get()        dit['平均价格'] = price        qushi = li.css('td .sc_up::text').get()        if qushi == None :            dit['趋势'] = '下降'        else:            dit['趋势'] = qushi        csv_write.writerow(dit)        print(dit)

保存数据

f = open('data.csv', mode='a', encoding='utf-8-sig', newline='')csv_write = csv.DictWriter(f, fieldnames=['品种', '平均价格', '趋势'])csv_write.writeheader()

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

0