首页 > 解决方案 > 找不到 CSRF 令牌

问题描述

我正在尝试登录该网站(https://isf.scout7.com/Apps/Login),然后使用 Python 和 requests 库抓取一些数据。

过去,我一直按照本网站 ( http://kazuar.github.io/scraping-tutorial/ ) 上的步骤 1 中的说明进行操作,这对我来说一直很有效。

我相信输入用户名和密码,我应该分别使用 login_form.login_model.username 和 login_form.login_model.password 。但是,对于我尝试登录的网站,我找不到需要登录的 CSRF 令牌。我已经通过使用 Chrome 检查页面来浏览 html,但我找不到任何类似于CSRF 令牌。

我完全错过了它,还是我不需要它来登录?

标签: pythonpython-requestscsrf

解决方案


我在登录和密码字段中输入了一些值,然后使用我的浏览器工具检查单击登录按钮时发送的 http 请求。这里是:

截屏

你看 - 这里没有发送 CSRF 令牌。因此,我想您可以将login=<login>&password=<password>&grant_type=password(可能还有我的请求中的其他一些值/标头)发布到https://api.scout7.com//token- 您将获得 OAuth 令牌作为响应。


推荐阅读