Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.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 3中的请求登录到ESI认证的网站_Python_Http_Python 3.x_Login_Python Requests - Fatal编程技术网

无法使用Python 3中的请求登录到ESI认证的网站

无法使用Python 3中的请求登录到ESI认证的网站,python,http,python-3.x,login,python-requests,Python,Http,Python 3.x,Login,Python Requests,在过去的两天里,我正在尝试登录我在food.com上的帐户 url = "http://share.food.com/registration/login.esi" 以下是我从该网站获得的代码: s = requests.Session() other_url = 'http://www.food.com/recipe-finder/all/shrimp?pn=25' p = dict(user = 'username', passwd = 'password') r = s.get(url,

在过去的两天里,我正在尝试登录我在food.com上的帐户

url = "http://share.food.com/registration/login.esi"
以下是我从该网站获得的代码:

s = requests.Session()
other_url = 'http://www.food.com/recipe-finder/all/shrimp?pn=25'
p = dict(user = 'username', passwd = 'password')
r = s.get(url, params = p)
print(r.url)
这是url的输出 我得到了正确的网址 但是

返回food.com/recipe finder/all/shrimp?layout=desktop&pn=1 这意味着我没有登录。
谢谢你的帮助

我刚刚发现登录的url是 url=

从这个页面,我发现登录表单有隐藏的变量: 用户名 密码类型为password pwdtext,它是字符串类型,但不是 登录显示为带有“登录”字样的按钮

仍然使用urlib.request或requests,我无法登录。我怎么知道?未创建cookie,并且r.history为空

这是HTML的一部分 …

… … … … … …

历史记录显示了什么?如果这是一个非空列表,则您的请求被重定向,最终的URL不同。该网站有一点间接性。表单在HTML中没有目标,因此您必须找出哪个Javascript正在设置表单的目标。
r = requests.get(other_url, cookies = c, verify = False)
print(r.url)