Crawl the day's cargo information in Xinfadi, Beijing and display the price changes over the fifteen days (1) --- Crawl today's cargo name, type and place of origin

1. Process of generating browser information

Insert image description here
We use python to simulate the browser to send information to the server to obtain the data required by the server and then process the obtained raw data instead of rendering it to the screen.

2. Analyze the parameters in the data

Insert image description here
Insert image description here

这两个分别是79号第一页和第二页的数据的data
limit:一页显示多少条数据
current:第几页
pubDateStartTime:开始日期
pubDateEndTime:截至日期
prodPcatid:一级分类序号
prodCatid:二级分类序号
prodName: 货物名字

3. Get today’s cargo data

3.1. Get the first page of data

我们先处理data数据
我们需要第一页所以current=1
一页显示二十条 limit=20
因为只获取今天的货物信息所以开始时间和结束时间都是今天
pubDateStartTime=pubDateEndTime=今日日期
data={
    
    
'limi': '20'
'current': '1'
'pubDateStartTime': '2023/07/09'
'pubDateEndTime': '2023/07/09'
'prodPcatid': ''
prodCatid: ''
prodName: ''
}

Insert image description here

从标头可以找到url='http://www.xinfadi.com.cn/getPriceData.html'
发送方式为post
import requests
url='http://www.xinfadi.com.cn/getPriceData.html'
data={
    
    
'limit': '20',
'current': '1',
'pubDateStartTime': '2023/07/09',
'pubDateEndTime': '2023/07/09',
'prodPcatid': '',
'prodCatid': '',
'prodName': ''
}
res=requests.post(url=url,data=data).json()
print(res)

operation result
Insert image description here

3.2. Get all the products of the day

Insert image description here

一共二十页436条数据一页一页发送请求需要436/20=22次
如果我们把limit=436 意味着一页能显示436条数据我们只需要获取一页就可以获取全部数据只需要一次请求

3.2.1 Get today’s total number of goods

{'current': 1, 'limit': 20, 'count': 436, 'list': [{'id': 1468762, 'prodName': '大白菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '0.5', 'highPrice': '0.7', 'avgPrice': '0.6', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468761, 'prodName': '娃娃菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '0.8', 'highPrice': '1.0', 'avgPrice': '0.9', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468760, 'prodName': '小白菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '0.7', 'highPrice': '1.3', 'avgPrice': '1.0', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468759, 'prodName': '圆白菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '0.6', 'highPrice': '1.2', 'avgPrice': '0.9', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468758, 'prodName': '紫甘蓝', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.2', 'highPrice': '1.3', 'avgPrice': '1.25', 'place': '冀宁', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468757, 'prodName': '芹菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.3', 'highPrice': '1.6', 'avgPrice': '1.45', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468756, 'prodName': '西芹', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '2.5', 'highPrice': '2.8', 'avgPrice': '2.65', 'place': '鲁辽', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468755, 'prodName': '菠菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.5', 'highPrice': '2.0', 'avgPrice': '1.75', 'place': '冀蒙', 'specInfo': '长\\短', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468754, 'prodName': '莴笋', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '0.5', 'highPrice': '1.0', 'avgPrice': '0.75', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468753, 'prodName': '团生菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.0', 'highPrice': '1.5', 'avgPrice': '1.25', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468752, 'prodName': '散叶生菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.0', 'highPrice': '1.3', 'avgPrice': '1.15', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468751, 'prodName': '油菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.0', 'highPrice': '1.3', 'avgPrice': '1.15', 'place': '冀京', 'specInfo': '大\\小', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468750, 'prodName': '香菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '2.0', 'highPrice': '3.0', 'avgPrice': '2.5', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468749, 'prodName': '茴香', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.0', 'highPrice': '1.5', 'avgPrice': '1.25', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468748, 'prodName': '韭菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.0', 'highPrice': '1.5', 'avgPrice': '1.25', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468747, 'prodName': '苦菊', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.5', 'highPrice': '3.2', 'avgPrice': '2.35', 'place': '冀辽', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468746, 'prodName': '油麦菜', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.5', 'highPrice': '2.0', 'avgPrice': '1.75', 'place': '冀辽', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468745, 'prodName': '散菜花', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.8', 'highPrice': '2.5', 'avgPrice': '2.15', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468744, 'prodName': '绿菜花', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '1.4', 'highPrice': '2.0', 'avgPrice': '1.7', 'place': '冀', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}, {'id': 1468743, 'prodName': '绿豆芽', 'prodCatid': 1186, 'prodCat': '蔬菜', 'prodPcatid': None, 'prodPcat': '', 'lowPrice': '0.95', 'highPrice': '1.0', 'avgPrice': '0.98', 'place': '', 'specInfo': '', 'unitInfo': '斤', 'pubDate': '2023-07-09 00:00:00', 'status': None, 'userIdCreate': 138, 'userIdModified': None, 'userCreate': 'admin', 'userModified': None, 'gmtCreate': None, 'gmtModified': None}]}
请搜索python字典基础操作
这是我们对第一页发送请求时得到的数据
我们可以发现页面的数据总和记录在count下
数据的格式为json格式可以搜索python字典详解学习相关内容
我们将count提取出来
count=res['count']
现在我们只需要让data中的limit=count就可以一页得到所有的数据
data['limit']=count

3.2.2 Obtain all cargo information on the day

import requests
url='http://www.xinfadi.com.cn/getPriceData.html'
data={
    
    
'limit': '20',
'current': '1',
'pubDateStartTime': '2023/07/09',
'pubDateEndTime': '2023/07/09',
'prodPcatid': '',
'prodCatid': '',
'prodName': ''
}
res=requests.post(url=url,data=data).json()#获取第一页数据
count=res['count']                #提取出货物的总数
data['limit'] =count              #将一页显示的数据更改为货物总数这样就能一页得到所有数据
res2=requests.post(url,data=data).json()
print(res2)

Insert image description here

Guess you like

Origin blog.csdn.net/qq_62975494/article/details/131626900