查询字符串参数在一天内更改多次请求。获取需要python解决方案

2024-05-20 00:38:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我想从这个站点自动检索数据,https://reports.bcogc.ca/ogc/f?p=200:21:3220363279557::NO::: 下面的代码执行csv下载。第一次运行此代码时,df连接到响应并生成数据集。你知道吗

问题是,如果我运行脚本一段时间后,而不是下载整个数据历史(30000行+),它只下载最新的数据(35行)。我注意到查询字符串参数(params=params line)会定期更改,一天更改几次,这会导致部分数据下载。你知道吗

我不想一直更改参数,以便每次运行代码时都能获得完整的数据集。有没有一个解决方案,这是永久的,将不需要我手动输入新的参数每次?你知道吗

import requests
import io

cookies = {
    'ORA_WWV_APP_200': 'ORA_WWV-fmsm2gSKWuJAeAMWlkJVb24U',
    '_ga': 'GA1.2.590107047.1541651761',
    '_gid': 'GA1.2.1288213293.1547007889',
}

headers = {
    'Connection': 'keep-alive',
    'Upgrade-Insecure-Requests': '1',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36',
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
    'Referer': 'https://reports.bcogc.ca/ogc/f?p=200:21:3220363279557::NO:::',
    'Accept-Encoding': 'gzip, deflate, br',
    'Accept-Language': 'en-US,en;q=0.9',
}

params = (
    ('p', '200:21:3220363279557:CSV::::'),
)

response = requests.get('https://reports.bcogc.ca/ogc/f', headers=headers, params=params, cookies=cookies)

df = pd.read_csv(io.StringIO(response.text), na_values = '-', low_memory=False)

Tags: csv数据no代码httpsogcdf参数