工具:
python 3.6
Fiddler4
所需要的库:
requests
BeautifulSoup

首先抓包,观察登录时需要什么:

这个authenticity_token的值是访问/login后可以获取,值是随机生成的,所以登录前要获取一下。

注意到还需要cookie

观察到action = ‘/session’
所以post的目标url为‘https://github.com/session’


# coding:utf-8import requests
from bs4 import BeautifulSoupurl = 'https://github.com/login'
url2 = 'https://github.com/session'
#首先登录/login,获取cookie和authenticity_token
r = requests.get(url)
html = BeautifulSoup(r.text,'lxml')
#获取cookies
cookie = r.cookies
authen = [i.attrs['value'] for i in html.find_all('input',{'name':'authenticity_token'})][0]
#将需要的数据列出来
postdata = {'commit':'Sign in','utf8':'√','authenticity_token':authen,'login':'********','password':'********',}
#设置好header
header = {'User-Agent':'''Mozilla/5.0 (Windows NT 6.3; WOW64)AppleWe\
bKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.146 Safari/537.36''','Referer':r'https://github.com/login','Connection':'keep-Alive','Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',}
#利用设置好的header和cookie,就可以访问了
r = requests.post(url2,data = postdata,cookies=cookie)#将访问的结果网页下载下来
f = open('123.html','w')
f.write(r.text)
f.close()

python Requests登录GitHub相关推荐

  1. python requests 登录qq_Python3使用requests登录人人影视网站的方法

    早就听说requests的库的强大,只是还没有接触,今天接触了一下,发现以前使用urllib,urllib2等方法真是太搓了-- 这里写些简单的使用初步作为一个记录 本文继续练习使用requests登 ...

  2. python requests登录_python3使用requests登录人人影视网站.py

    1.[代码]python3使用requests登录人人影视网站.py """ python3使用requests登录人人影视网站.py 2016年5月11日 07:33: ...

  3. Python requests HTTP验证登录实现流程

    对我而言最重要的是这几句 假设url为http://xxx.yyy.zzz 用户名为admin 密码为123456 则访问的网址应该为http://admin:123456@xxx.yyy.zzz[h ...

  4. python模拟登录详细教程_Python模拟登录requests.Session应用详解

    最近由于某些原因,需要用到Python模拟登录网站,但是以前对这块并不了解,而且目标网站的登录方法较为复杂, 所以一下卡在这里了,于是我决定从简单的模拟开始,逐渐深入地研究下这块. 注:本文仅为交流学 ...

  5. python requests模拟登录淘宝购物车下单_Python使用requests库模拟登录淘宝账号(上)...

    学好Python这款编程语言,我们能够设计出很多程序要帮助我们完成数据采集等工作,ET代理今天要跟大家介绍如何用Python模拟登录淘宝账号? 看了下网上有很多关于模拟登录淘宝,但是基本都是使用scr ...

  6. Python进阶之使用Scrapy实现自动登录Github的两种方法(POST,FormRequest,from_response)

    Python进阶之使用Scrapy实现自动登录Github的两种方法 1. 通过.FormRequest()实现登录github github1.py 2. 通过.FormRequest.from_r ...

  7. Python requests 自动登录某财BBS,自动签到打卡领铜钱,最后再配个plist,每天自动执行

    某财的用户应该都知道这个网站,在"签到有礼"版块,每天会有一贴,用帖子中给出的关键字回帖,得铜钱,据说铜钱可以换现金,还可以换书. 真好,裸辞在家的失业人员最需要这个-每天领之. ...

  8. day01 初见python爬虫之“爬校花网”和“自动登录github”

    首先我们来解释一下几个概念: 1.什么是爬虫? 爬取数据. 2.什么是互联网? 由一堆网络设备.把一台台的计算机互联到一起称之为互联网. 3.互联网建立的目的: 数据的传递与数据的共享. 4.什么是数 ...

  9. python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告(二)

    可以参考 python+requests接口自动化完整项目设计源码(一)https://www.cnblogs.com/111testing/p/9612671.html 原文地址https://ww ...

最新文章

  1. 【3】python核心编程 第六章-序列:字符串、列表和元组
  2. 多并发-最后刷新页面
  3. idea的logback的getter和setter方法失效
  4. 线程的简单生产消费模式
  5. NYOJ5056_黑色帽子(水题)
  6. python 删除文件、目录_python脚本删除文件及删除文件目录的方法
  7. 使用Maven原型高效创建Eclipse模块
  8. xps13 linux 硬盘分区,在xps13上安装ubuntu16.04教程
  9. 服务动态选择域名问题
  10. 《2018年云上挖矿态势分析报告》发布,非Web类应用安全风险需重点关注
  11. python如何使用geotools_Python pygeotools包_程序模块 - PyPI - Python中文网
  12. 95-25-010-命令-topic 创建过程
  13. mysql维护计划 自动备份_MysQL windows 下自动备份,同时加入计划任务脚本
  14. 利用Oracle内置分析函数进行高效统计汇总
  15. ajax是异步非阻塞,[转帖]再谈IO的异步,同步,阻塞和非阻塞
  16. 混合选择集的坐标提起lisp_晓东CAD家园-论坛-A/VLISP-[LISP程序]:请教如何对选择集进行排序-我有(setq ss(ssget _w p0 p1 (list (0 . CIRC...
  17. java环境安装菜鸟教程_Linux菜鸟教程(一:JDK安装和java环境配置)
  18. pdf屏幕取词 android,金山词霸Android版更是独家实现了手机屏幕取词和摄像头取词功能...
  19. 多层线性模型和面板数据模型笔记(待完善,持续更)
  20. idea顶部工具栏、底部工具栏、两边工具栏的显示与隐藏

热门文章

  1. 怎么保证读取最新数据_Kafka怎么保证数据不丢失?
  2. 【TypeScript系列教程14】Array数组对象的常见的方法
  3. mysql orderby多个_MySQL OrderBy
  4. CSS实现响应式布局(自动拆分几列)
  5. ife 零基础学院 day 2
  6. bootstrap-select控件全选,全不选,查询功能实现
  7. Linux学习之四——磁盘与文件系统管理
  8. Linux/CentOS7install PackageError: Loaded plugins: fastestmirror
  9. error connection reset by peer 104
  10. 修改input的placeholder颜色