-----------------------------------------
1. Proceso de generación de información del navegador.
Usamos Python para simular que el navegador envía información al servidor para obtener los datos requeridos por el servidor y luego procesa los datos sin procesar obtenidos en lugar de mostrarlos en la pantalla.
2. Analizar los parámetros en los datos.
这两个分别是7月9号第一页和第二页的数据的data
limit:一页显示多少条数据
current:第几页
pubDateStartTime:开始日期
pubDateEndTime:截至日期
prodPcatid:一级分类序号
prodCatid:二级分类序号
prodName: 货物名字
3. Obtenga los datos de carga actuales
3.1 Obtener la primera página de datos
我们先处理data数据
我们需要第一页所以current=1
一页显示二十条 limit=20
因为只获取今天的货物信息所以开始时间和结束时间都是今天
pubDateStartTime=pubDateEndTime=今日日期
data={
'limi': '20'
'current': '1'
'pubDateStartTime': '2023/07/09'
'pubDateEndTime': '2023/07/09'
'prodPcatid': ''
prodCatid: ''
prodName: ''
}
从标头可以找到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)
resultado de la operación
3.2 Consigue todos los productos del día
一共二十页436条数据一页一页发送请求需要436/20=22次
如果我们把limit=436 意味着一页能显示436条数据我们只需要获取一页就可以获取全部数据只需要一次请求
3.2.1 Obtener el número total de bienes de hoy
{'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 Obtener toda la información de carga del día
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)