python requests session 实现模拟登录登录失败,无法获得需要内容
需要模拟登录okcoin,遇到了一些问题,希望大家指点O>_<O
有参考百度的登录方式,先获取了页面cookie才用post的,但还是没有成功,获取的仍然是登录前的页面,那要怎样才能实现okcoin的模拟登录?
附上代码片段,恳请大家指教,不胜感激~~~~
def __init__(self, loginName='*******', password='******'):
self.header = {
'Host': 'www.okcoin.cn',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:42.0) Gecko/20100101 Firefox/42.0',
'Accept': '*/*',
'Accept-Language': 'zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3',
'Accept-Encoding': 'gzip, deflate',
'Connection': 'keep-alive',
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
'Pragma': 'no-cache',
'Cache-Control': 'no-cache'
}
self.loginData = {
'loginName': loginName,
'password': password
}
def login(self):
session = requests.session()
number = random.randint(11,99)
self.loginData.update({'random':number})
session.get('https://www.okcoin.cn/')
#session.get('https://www.okcoin.cn/user/login/index.do?random='+str(number))
#session.get('https://www.okcoin.cn/trade/ltc.do')
session.post('https://www.okcoin.cn/user/login/index.do?random='+str(number), data=self.loginData, headers=self.header)
html = session.get('https://www.okcoin.cn/trade/ltc.do')
return html
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
加上referer试试,另外模拟一下ticker.do这个请求,可能是用来刷新sessionID的。
模拟登陆什么的。。多抓包。。好好模拟网络请求不要偷懒就没啥难度了.....