python 模拟登陆github的示例


Posted in Python onDecember 04, 2020
# -*- coding: utf-8 -*-
# @Author: CriseLYJ
# @Date:  2020-08-14 12:13:11

import re
import requests


class 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的示例代码的详细内容,更多关于python 模拟登陆github的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Djang中静态文件配置方法
Jul 30 Python
python中urllib.unquote乱码的原因与解决方法
Apr 24 Python
在Windows中设置Python环境变量的实例讲解
Apr 28 Python
学习python可以干什么
Feb 26 Python
Python将视频或者动态图gif逐帧保存为图片的方法
Sep 10 Python
浅谈python中统计计数的几种方法和Counter详解
Nov 07 Python
python 字典套字典或列表的示例
Dec 16 Python
Python 识别12306图片验证码物品的实现示例
Jan 20 Python
pyqt5中动画的使用详解
Apr 01 Python
一篇文章带你搞定Ubuntu中打开Pycharm总是卡顿崩溃
Nov 02 Python
详解python使用金山词霸的翻译功能(调试工具断点的使用)
Jan 07 Python
Sentry的安装、配置、使用教程(Sentry日志手机系统)
Jul 23 Python
python中round函数保留两位小数的方法
Dec 04 #Python
python中pow函数用法及功能说明
Dec 04 #Python
python对输出的奇数偶数排序实例代码
Dec 04 #Python
python中entry用法讲解
Dec 04 #Python
利用python制作拼图小游戏的全过程
Dec 04 #Python
pycharm 2020.2.4 pip install Flask 报错 Error:Non-zero exit code的问题
Dec 04 #Python
利用python如何实现猫捉老鼠小游戏
Dec 04 #Python
You might like
使用 MySQL 开始 PHP 会话
2006/12/21 PHP
php中serialize序列化与json性能测试的示例分析
2013/04/27 PHP
laravel 使用auth编写登录的方法
2019/09/30 PHP
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
2010/10/15 Javascript
JS限制上传图片大小不使用控件在本地实现
2012/12/19 Javascript
jquery Ajax 实现加载数据前动画效果的示例代码
2014/02/07 Javascript
jQuery表格排序组件-tablesorter使用示例
2014/05/26 Javascript
node.js(express)中使用Jcrop进行图片剪切上传功能
2017/04/21 Javascript
AngularJS实现自定义指令与控制器数据交互的方法示例
2017/06/19 Javascript
webpack学习笔记之代码分割和按需加载的实例详解
2017/07/20 Javascript
js模拟百度模糊搜索的实例
2017/08/04 Javascript
javascript回调函数详解
2018/02/06 Javascript
Vue中在新窗口打开页面及Vue-router的使用
2018/06/13 Javascript
微信小程序使用component自定义toast弹窗效果
2018/11/27 Javascript
详解js实时获取并显示当前时间的方法
2019/05/10 Javascript
[47:36]Optic vs Newbee 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
python编写简单爬虫资料汇总
2016/03/22 Python
书单|人生苦短,你还不用python!
2017/12/29 Python
对python中两种列表元素去重函数性能的比较方法
2018/06/29 Python
Python 实现训练集、测试集随机划分
2020/01/08 Python
打包PyQt5应用时的注意事项
2020/02/14 Python
Django中FilePathField字段的用法
2020/05/21 Python
python实现经纬度采样的示例代码
2020/12/10 Python
HTML5之SVG 2D入门5—颜色的表示及定义方式
2013/01/30 HTML / CSS
HTML5 canvas 瀑布流文字效果的示例代码
2018/01/31 HTML / CSS
html5的input的required使用中遇到的问题及解决方法
2018/04/24 HTML / CSS
NYX Professional Makeup俄罗斯官网:世界知名的化妆品品牌
2019/12/26 全球购物
Java 中访问数据库的步骤?Statement 和PreparedStatement 之间的区别?
2012/06/05 面试题
Java中compareTo和compare的区别
2016/04/12 面试题
Shell如何接收变量输入
2012/09/24 面试题
函授毕业自我鉴定
2013/12/19 职场文书
18岁生日感言
2014/01/12 职场文书
高考标语大全
2014/06/05 职场文书
教师个人总结范文
2015/02/11 职场文书
财务工作失误检讨书
2015/02/19 职场文书
今日说法观后感
2015/06/08 职场文书