因此,我正在学习有关Web爬网程序和自动化的方法。我正在尝试不使用mega.nz的官方API自动登录(就我而言,它甚至对于Python来说已经过时了)。
这是代码(由于实际上没有数据发送,目前无法正常工作)。我不想使用浏览器。
loginURL = 'https://mega.nz/login'
requestURL = 'https://mega.nz/fm/dashboard'
payload = {
'login-name2': 'test@email.com',
'login-password2': 'password',
'login-check2': ''
}
with requests.session() as s:
s.post(loginURL, headers=headers, data=payload)
r = s.get(requestURL)
print(r.text)
我正在使用的标题:
{'Content-Type': 'text/html', 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Headers': 'MEGA-Chrome-Antileak', 'Access-Control-Max-Age': '86400', 'Content-Encoding': 'gzip', 'Content-Length': '934', 'Strict-Transport-Security': 'max-age=63072000; includeSubDomains; preload', 'X-Frame-Options': 'DENY', 'Set-Cookie': 'geoip=IT', 'Content-Security-Policy': "default-src 'self' data: blob: *.mega.co.nz *.mega.nz http://*.mega.co.nz http://*.mega.nz wss://*.karere.mega.nz *.karere.mega.nz:1380 http://127.0.0.1:6341 localhost.megasyncloopback.mega.nz:6342; script-src 'self' *.mega.co.nz *.mega.nz data: blob:; style-src 'self' 'unsafe-inline' *.mega.co.nz *.mega.nz data: blob:; frame-src 'self' mega: *.megaad.nz; img-src 'self' *.mega.co.nz *.mega.nz data: blob:", 'Connection': 'Keep-Alive'}
如何自动登录?
答案 0 :(得分:0)
您可能希望阅读requests
关于身份验证的文档,其中提供了几种通过HTTP进行身份验证的方法。
您可以找到它here。
答案 1 :(得分:0)
我没有找到有关Mega的HTTP API的任何信息。您是否要通过将在浏览器中使用的Web界面访问该网站?以这种方式运行软件可能非常困难或不可能。
通常,仅当您尝试访问的服务提供有效的REST API时,才使用纯HTTP请求。 (例如,参见Spotify API)
也许可以看看this example从Python访问Mega的情况。这使用了官方的Mega C ++ API,您可以从Python脚本访问它。
答案 2 :(得分:0)