Rastree la información de carga del día en Xinfadi, Beijing y muestre los cambios de precios durante los quince días (1) --- Rastree el nombre, tipo y lugar de origen de la carga de hoy

1. Proceso de generación de información del navegador.

Insertar descripción de la imagen aquí
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.

Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí

这两个分别是79号第一页和第二页的数据的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: ''
}

Insertar descripción de la imagen aquí

从标头可以找到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
Insertar descripción de la imagen aquí

3.2 Consigue todos los productos del día

Insertar descripción de la imagen aquí

一共二十页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)

Insertar descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/qq_62975494/article/details/131626900
Recomendado
Clasificación