【问题标题】:Can't login to website using python [requests, roboBrowser]无法使用 python [requests, roboBrowser] 登录网站
【发布时间】:2023-04-07 06:19:01
【问题描述】:

我已经环顾一周了。我找到的所有答案要么已过时,要么不起作用。

我正在尝试登录该网站http://ink361.com/app/login
我尝试单独使用请求,并尝试将请求与 robobrowser 混合以注入一些标头。
为测试目的提供我的用户名和密码没有问题。

from robobrowser import RoboBrowser
import requests
headers = {
    "Accept" : "application/json",
    "Connection" : "keep-alive",
    "Accept-Encoding" : "gzip, deflate",
    "Accept-Language" : "en-US,en;q=0.5",
    "Content-Length" : "50",
    "Content-Type" : "application/x-www-form-urlencoded; charset=utf-8",
    "Cookie" : '',
    "DNT" : '1',
    "Host" : "ink361.com",
    "Referer" : "http://ink361.com/app/login",
    "User-Agent" : "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:54.0) Gecko/20100101 Firefox/54.0",
    "X-Request" : "JSON",
    "X-Requested-With" : "XMLHttpRequest"
}
s = requests.Session()
s.headers = headers
browser = RoboBrowser(session=s,history=True)
login_url = 'http://ink361.com/app/login'
browser.open(login_url)
forms = browser.get_forms()
print(forms)

我试图打印网页中的所有表格,但它需要很长时间才能引发

RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response',)) 

标题出于某种原因做这件事。我试过没有标题我得到了一个空的表格数组。
我试着抓住这样的表格

form = browser.get_form(class_='modern-form')
print(form.fields)

我得到的字段是空的..

【问题讨论】:

    标签:
    python
    python-3.x
    python-requests
    robobrowser