时间:2021-05-23
# -*- coding: utf-8 -*-# @Author: CriseLYJ# @Date: 2020-08-14 12:13:11import reimport requestsclass GithubLogin(object): def __init__(self, email, password): # 初始化信息 self.headers = { 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36', 'Referer': 'https://github.com/', 'Host': 'github.com' } self.session = requests.Session() self.login_url = 'https://github.com/login' self.post_url = 'https://github.com/session' self.email = email self.password = password def login_GitHub(self): # 登录入口 post_data = { 'commit': 'Sign in', 'utf8': '✓', 'authenticity_token': self.get_token(), 'login': self.email, 'password': self.password } resp = self.session.post( self.post_url, data=post_data, headers=self.headers) print('StatusCode:', resp.status_code) if resp.status_code != 200: print('Login Fail') match = re.search(r'"user-login" content="(.*?)"', resp.text) user_name = match.group(1) print('UserName:', user_name) # Get login token def get_token(self): response = self.session.get(self.login_url, headers=self.headers) if response.status_code != 200: print('Get token fail') return None match = re.search( r'name="authenticity_token" value="(.*?)"', response.text) if not match: print('Get Token Fail') return None return match.group(1)if __name__ == '__main__': email = input('Account:') password = input('Password:') login = GithubLogin(email, password) login.login_GitHub()
登录效果
以上就是python 模拟登陆github的示例代码的详细内容,更多关于python 模拟登陆github的资料请关注其它相关文章!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Python模拟登陆的两种实现方法有时候我们的抓取项目时需要登陆到某个网站上,才能看见某些内容的,所以模拟登陆功能就必不可少了,散仙这次写的文章,主要有2个例子
上一篇介绍了使用python模拟登陆网站,但是登陆的网站都是直接输入账号及密码进行登陆,现在很多网站为了加强用户安全性和提高反爬虫机制都会有包括字符、图片、手机
本文实例讲述了Python使用装饰器模拟用户登陆验证功能。分享给大家供大家参考,具体如下:#-*-coding:utf-8-*-#!python3user_li
python3.0模拟用户登录,三次错误锁定的实例实例如下所示:#-*-coding:utf-8-*-#需求模拟用户登录,超过三次错误锁定不允许登陆count=
当我们使用selenium实现模拟登陆时,获取到登陆按钮元素后,直接调用它的click()方法就能实现登陆跳转,并且此时的webDriver也是指向当前页面,这