首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用requets.post不工作登录-错误400、404和405

使用requets.post不工作登录-错误400、404和405
EN

Stack Overflow用户
提问于 2020-01-21 04:19:16
回答 1查看 52关注 0票数 0

我正在尝试登录当地一家超市的网页,以获取我正在进行的一个网络抓取项目。不幸的是,我不能在没有登录的情况下访问商店,所以我需要发布一个登录请求,然后加载适当的URL来抓取BeautifulSoup。

下面是我写的代码:

代码语言:javascript
复制
import requests

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36'}

landing_URL = 'https://www.esselunga.it/area-utenti/applicationCheck?appName=esselungaEcommerce&daru=https%3A%2F%2Fwww.esselungaacasa.it%3A443%2Fecommerce%2Fnav%2Fauth%2Fsupermercato%2Fhome.html%3F&loginType=light#!/negozio/'

payload = {'gw_username': 'xxx', 'gw_password': 'yyy'}

r = requests.post(landing_URL, payload, headers=headers)
print(r.status_code)

现在,源代码中的登录行是这样的:

代码语言:javascript
复制
<form id="loginForm" action="/area-utenti/loginExt" method="post" onsubmit="return checkCaptchaAndLogin();" accept-charset="utf-8">

我尝试在网址的不同部分添加/loginExt来发布登录请求,但都不起作用,大多数时候我得到的请求都不受支持。

我该如何解决这个问题呢?

EN

回答 1

Stack Overflow用户

发布于 2020-01-21 04:26:13

首先,该操作是action="/area-utenti/loginExt“,因此将数据提交到mywebsite.com/area-utenti/loginExt。仅仅添加/loginExt不会有多大作用。

其次,您有'onsubmit ="return checkCaptchaAndLogin ();“属性,这意味着当您提交表单时,checkCaptchaAndLogin函数将被调用,并且可能覆盖提交操作。此外,根据函数的名称,我可以猜测您必须解决验证码才能登录。

在没有更多信息的情况下,很难说。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59830316

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档