Scrapy FormRequest密码

xxhby3vn  于 2023-11-19  发布在  其他
关注(0)|答案(1)|浏览(129)

我尝试使用Scrapy shell登录此表单。但我不确定是否使用了表单字段的正确名称。
获取令牌工程

token = response.css("form input[name=_csrf_token]::attr(value)").extract_first()

字符串
这是我正在使用的呼叫

FormRequest.from_response(response,formdata={'_csrf_token':token,'email':'Somepassword','password':'[email protected]'})


我尝试使用id值,name值,type值,但没有一个让我登录到网站。
这里是用户名字段

<div class="g-form-group g-mb-3">
<label class="g-form-label g-form-label--small" for="login-form_email">Email Address</label>
<input class="g-form-input" id="login-form_email" name="login[email]" type="email"></div>


这是密码字段

<div class="g-form-group g-mb-3">
<label class="g-form-label g-form-label--small" for="login-form_password">Password</label>
<input class="g-form-input" id="login-form_password" name="login[password]" type="password">
</div>


我没有得到一个错误.后发生,但当我试图查看(响应)我得到的登录页面,所以我没有登录到网站.我如何纠正我的请求登录到网站,并验证我已经成功登录?
如果需要的话,我尝试登录的站点是这个
https://auth.pff.com/

k4ymrczo

k4ymrczo1#

根据您提供的HTML,表单字段是login[email]和login[password]。您应该在表单数据字典中使用这些名称。

login_request = FormRequest.from_response(
response,
formdata={
    '_csrf_token': token,
    'login[email]': '[email protected]',
    'login[password]': 'yourpassword'
}
)

字符串
来源:我的文章https://ioflood.com/blog/python-web-scraping/#Alternative_Python_Web_Scraping_Techniques_Scrapy_and_APIs

相关问题