正在b站学习关于bs4解析库的知识点,练习抓取北京新发地网页的数据。在梳理网页跳转时,发现新发地-价格行情这个网页中的标签信息不全,缺乏蔬菜信息,在Network中发现是另外一个网址以json的形式存储着数据,网址为http://www.xinfadi.com.cn/getPriceData.html。同时发现该请求为post请求,网页换页的数据保存在Form Data中,因为替换Form Data中的current可以实现换页抓取数据。代码很简单,如下:
import requests import json url = "http://www.xinfadi.com.cn/getPriceData.html" count = 0 for page in range(1,4): FormData = { 'limit':20, 'current':page, } resp = requests.post(url,data=FormData) html = resp.text content = json.loads(html) veg_info = content["list"] for dic in veg_info: count += 1 print(dic) print("这是第{}个数据".format(count))
特此记录下来,方便之后自己学习使用!这是前三页数据的抓取,最后数据形似是dict字典形式的数据。