使用请求模块注销用户
Using requests module to log out the user
我需要帮助构建 post 从网站注销的请求。注销按钮(其实不是按钮)源码如下:
<a tabindex="9" title="Log Out" href="/logout.jsp?submit_ButtonOK=true" onclick="removeLoginCookie();">Log Out</a>
我的代码不起作用。脚本执行后用户仍处于登录状态。
logout = requests.post(url+'/logout.jsp?submit_ButtonOK=true')
print logout.url
我认为问题出在登录后保留的 cookie 中。
这就是我的全部代码(当然还没写完):
import requests, time
payload = {
'UserName_Text' : 'user',
'UserPW_Password' : 'pass',
'submit_ButtonOK' : 'return buttonClick;'
}
url = 'url'
p = requests.post(url+'/login.jsp', data = payload) #login
print p.url
timer = requests.get(url+'/login.jsp').elapsed.total_seconds()
print timer
logout = requests.get(url+'/logout.jsp', params={'submit_ButtonOK' :'true'})
print logout.url
它看起来不像是 POST
请求 - 当您单击超链接时,浏览器会发送 GET
请求。
(好吧,removeLoginCookie
函数可以覆盖它并改为发送 POST
请求。)
此外,确定 cookie 名称是什么,然后调用类似的东西(取决于 removeLoginCookie
的工作方式以及它用于存储会话密钥的名称):
r = requests.get(url + 'logout.jsp', params={'submit_ButtonOK': 'true'}, cookies={'logged_in': 'false', 'session': ''})
我需要帮助构建 post 从网站注销的请求。注销按钮(其实不是按钮)源码如下:
<a tabindex="9" title="Log Out" href="/logout.jsp?submit_ButtonOK=true" onclick="removeLoginCookie();">Log Out</a>
我的代码不起作用。脚本执行后用户仍处于登录状态。
logout = requests.post(url+'/logout.jsp?submit_ButtonOK=true')
print logout.url
我认为问题出在登录后保留的 cookie 中。
这就是我的全部代码(当然还没写完):
import requests, time
payload = {
'UserName_Text' : 'user',
'UserPW_Password' : 'pass',
'submit_ButtonOK' : 'return buttonClick;'
}
url = 'url'
p = requests.post(url+'/login.jsp', data = payload) #login
print p.url
timer = requests.get(url+'/login.jsp').elapsed.total_seconds()
print timer
logout = requests.get(url+'/logout.jsp', params={'submit_ButtonOK' :'true'})
print logout.url
它看起来不像是 POST
请求 - 当您单击超链接时,浏览器会发送 GET
请求。
(好吧,removeLoginCookie
函数可以覆盖它并改为发送 POST
请求。)
此外,确定 cookie 名称是什么,然后调用类似的东西(取决于 removeLoginCookie
的工作方式以及它用于存储会话密钥的名称):
r = requests.get(url + 'logout.jsp', params={'submit_ButtonOK': 'true'}, cookies={'logged_in': 'false', 'session': ''})