我是刚开始编写Python程序的新手,并且没有在网站上自动执行用户任务的经验,因此如果我忽略了显而易见的内容,我们深表歉意。
我正在尝试做的是自动从Intranet站点下载文件。因为它是一个JavaScript网站,所以没有特定的URL,所以我的想法是使用户下载文件的步骤自动化,即1)登录到站点2)导航到“报告”链接3)打开并提交创建报告的表单。
我发现自己在尝试登录该站点时陷入了循环。如果导航到登录页面“ ... / example.asp / login / default.asp”,则会收到错误消息“未经授权:无效的凭据错误”。有趣的是,如果我尝试直接导航到报告链接,则会被发送到超时页面“您的会话已过期,请单击此处登录”-在这里将我重定向回login / default.asp页面。
非常感谢我能解决此问题的任何想法!
这是我一直在使用的基本代码:
import requests
from requests import session
url = 'http://example.com/example_asp/login/default.asp'
payload = {
'username': 'UID',
'password': 'PWD'
}
with session() as c:
request = c.get(url, payload)
print(request.text)
为解决身份验证问题,我将我的Chrome浏览器cookie与此脚本一起使用:http : //n8henrie.com/2014/05/decrypt-chrome-cookies-with-python/
使一切变得非常简单:
url = 'http://www.example.com'
s = requests.Session()
cookies = pyCookieCheat.chrome_cookies(url)
s.get(url, cookies = cookies)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句