Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过python请求登录网站的令牌名称_Python_Python Requests - Fatal编程技术网

通过python请求登录网站的令牌名称

通过python请求登录网站的令牌名称,python,python-requests,Python,Python Requests,我正在尝试使用Python的请求库登录一个网站。我以前用过,但我想我唯一被卡住的地方就是代币。在网站的登录表单数据中,令牌名称为“idsrv.xsrf”。问题是,由于句点的原因,我不能在字典中将其用作关键字 import requests with requests.Session() as r: url = "https://www.foo.com/login" USERNAME = "uname" PASSWORD = "pword" r.get(url) token=r.cookies[

我正在尝试使用Python的请求库登录一个网站。我以前用过,但我想我唯一被卡住的地方就是代币。在网站的登录表单数据中,令牌名称为“idsrv.xsrf”。问题是,由于句点的原因,我不能在字典中将其用作关键字

import requests

with requests.Session() as r:
url = "https://www.foo.com/login"
USERNAME = "uname"
PASSWORD = "pword"
r.get(url)
token=r.cookies["idsrv.xsrf"]
login_data = dict(idsrv.xsrf=token, Username=USERNAME, Password=PASSWORD)
r.post(url, data=login_data, headers={"Referer": "https://login.foo.com/login"})
page = r.get("https://www.foo.com/Home")
print(page.content)
我已尝试插入idsrv、xsrv、IDSRVxsrv。当我做这些事情时,它会给我登录页面的页面内容,而不是主页的内容。我相信这是我唯一的问题,但在问题解决之前我无法确定


谢谢

您可以使用另一种实例化词典的方法:

login_data = {'idsrv.xsrf':token, 'Username':USERNAME, 'Password':PASSWORD}
关于性能差异的有趣背景故事: