Python 请求未返回正确的数据

问题描述 投票:0回答:1

我正在做一个报废项目,遇到问题,使用 python 请求我可以登录网站并获取随后发送的令牌,问题随之而来。发送正确的令牌进行帖子以记录表格的信息(应该与帖子一起出现),但帖子返回的不是数据,而是没有数据的 HTML。

网络帖子回复的图片。

通过 python 请求响应的图像。

这可能是什么原因造成的?以及如何收集数据,我正在做适当的帖子并提供 cookie 和凭据。

用代码编辑

def login():
    credentials = file_manager.file_manager.get_credentials()
    print(credentials)

    headers = {
        'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:123.0) Gecko/20100101 Firefox/123.0',
        'Accept':'text/html,application/xhtml+xml,application/xml;'
        }
    
    session = requests.session()

    session.headers.update(headers)

    r = session.get(credentials[0])

    soup = BeautifulSoup(r.text, 'html.parser')
    verificationToken = (soup.find(attrs={'name':'__RequestVerificationToken'}).attrs['value'])

    parameters = {
        "__RequestVerificationToken":str(verificationToken),
        "versao":"6",
        "Email":credentials[1],
        "Password":credentials[2],
        "ReturnUrl":""
    }

    r = session.post(url,params=parameters, headers=headers)
    r = session.get(url, headers=headers)
    r = session.get(url,headers=headers)

    parameters = {
            parameter:parameter,
        }

    r = session.post(url, headers=headers)

    f = open('response.html','w', encoding="utf-8")
    f.write(r.text)
python python-requests
1个回答
0
投票

我知道该怎么做了。

'X-Requested-With': 'XMLHttpRequest'
添加到 POST 标题 并使用
data=
而不是
params=
来请求。

© www.soinside.com 2019 - 2024. All rights reserved.