使用 python requests 模拟登陆
来源:互联网 发布:网络电视直播软件apk 编辑:程序博客网 时间:2024/04/30 01:39
# -*- coding: utf-8 -*-import requestsimport reimport requests.packages.urllib3requests.packages.urllib3.disable_warnings()headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0'}URL = 'https://passport.csdn.net/account/login'class CSDN(object): def __init__(self, user, password): self.user = user self.password = password self.s = requests.session() self.s.headers.update(headers) self.s.verify = False def __del__(self): if self.s: del self.s def login(self): r = self.s.get(URL) hidden_data = self._get_hidden_fields(r.text) data = {'username': self.user, 'password': self.password} data.update(hidden_data) print data r = self.s.post(URL, data=data) print r.status_code print r.text @staticmethod def _get_hidden_fields(response_content): """ <input type="hidden" name="lt" value="LT-59480-jVbee0Jst...." /> <input type="hidden" name="execution" value="e4s1" /> <input type="hidden" name="_eventId" value="submit" /> """ data = {} pattern_lt = r'name="lt" value="(.*?)"' m = re.search(pattern_lt, response_content, re.I) data['lt'] = m.group(1) pattern_exec = r'name="execution" value="(.*?)"' m = re.search(pattern_exec, response_content, re.I) data['execution'] = m.group(1) pattern_event = r'name="_eventId" value="(.*?)"' m = re.search(pattern_event, response_content, re.I) data['_eventId'] = m.group(1) return dataif __name__ == '__main__': csdn = CSDN('user', 'password') csdn.login()
1 0
- 使用 python requests 模拟登陆
- Python模拟登陆(使用requests库)
- 使用Python的Requests包模拟登陆
- Python requests 模拟登陆
- python requests模拟登陆github
- 使用requests模拟登陆github
- 使用requests模拟登陆csdn
- 【LeetCode】Python requests模拟Leetcode登陆
- Python使用requests库模拟登陆网站的方式--以豆瓣为例
- Python使用requests库模拟登陆网站的方式--以豆瓣为例
- requests模拟登陆
- python模拟登陆知乎和CSDN【urllib,re,requests】
- 利用Python requests库模拟登陆学校教务系统
- 利用python requests库模拟登陆知乎
- python requests模拟登陆带验证码的网站
- 使用requests模拟登陆的三种方式
- 使用requests的session机制模拟登陆知乎
- 利用requests 模拟登陆csdn
- poj博弈n连刷
- 立业_b
- 微信小程序开发—重磅消息,张小龙公布小程序上线时间
- AngularJS 实现复选框 全选/取消全选
- xcode自动化测试小试
- 使用 python requests 模拟登陆
- MongoDB regular expression with indexed field
- yii2 widget实现筛选记录
- android模拟器,Genymotion问题:Unable to start the virtual device.
- unity 打包完成之后 (黑色控制台提示)
- 二叉树练习——建树+叶子数+深度
- 渗透工具之nmap使用
- Java回顾之序列化
- hdu1255(线段树求面积交)