python登录网站脚本_Python爬虫之用脚本登录Github并查看信息

news/2024/5/9 12:58:47/文章来源:https://blog.csdn.net/weixin_39779467/article/details/110274033

前言分析目标网站的登录方式

目标地址:https://github.com/login

登录方式做出分析:

第一,用form表单方式提交信息,

第二,有csrf_token,

第三 ,是以post请求发送用户名和密码时,需要第一次get请求的cookie

第四,登录成功以后,请求其他页面是只需要带第一次登录成功以后返回的cookie就可以。

以get发送的请求获取我们想要的token和cookie

1367493-20180715225935275-119889209.png

1367493-20180715225943882-1167738032.png

代码:

import requests

from bs4 import BeautifulSoup

r1 = requests.get('https://github.com/login')

soup = BeautifulSoup(r1.text,features='lxml') #生成soup 对象

s1 = soup.find(name='input',attrs={'name':'authenticity_token'}).get('value')

#查到我们要的token

r1_cookies = r1.cookies.get_dict() # 下次提交用户名时用的cookie

# print(r1_cookies)

# print(s1)

#结果::

{'logged_in': 'no', '_gh_sess': 'VDFWa2hJWjFMb1hpRUFLRDVhUmc3MXg1Tk02TDhsUnhDMERuNGpyT2Y4STlQZ2xCV1lCZEFhK21wdFR1bkpGYUV0WEJzcDEydWFzcm93

aVc4Nk91Q2JicmtRV0NIQ0lRSWM4aFhrSVFYbCtCczBwdnhVN0YySVJJNUFpQnhyTzNuRkJwNDJZUWxUcEk2M2JkM3VSMDdXVHNOY1htQkthckJQZDJyUVR2RzBNUkU3VnltRVF2U

m1admU3c3YzSGlyVnVZVm0ycnA1eUhET1JRVWNLN0pSbndKWjljMGttNG5URWJ1eU8rQjZXNEMxVEthcGVObDFBY2gvc2ZzWXcvWWZab29wQWJyU0l6cmZscWhBQUlzYTA3dTRtb

3l1S0hDYytHY2V1SUhEWlZvVlZoSWZpTzBjNmlidFF2dzI2bWgtLTJON1lqbm5jWUtSYmtiVEM1clJPakE9PQ%3D%3D--897dbc36c123940c8eae5d86f276dead8318fd6c'}

pRz0wapEbu5shksGCeSN0FijWoU9ALw8EPUsXlqgcw1Ezirl0VbSKvkTYqIe8VhxhPH2H/uzGaV6XX+yjTGoVA==

获取这两个值就可以,进行下一步发送登录请求:

第二步post方式提交用户名密码

1367493-20180715231911532-109904705.png

1367493-20180715231918979-1149765884.png

代码::

这个代码接着上面的get请求,只是post请求的部分,

r2 = requests.post(

'https://github.com/session',

data ={

'commit':'Sign in',

'utf8':'✓',

'authenticity_token':s1,

'login':'541756569@qq.com',

'password':'用户名密码' # 填上正确的用户名即可

},

cookies = r1.cookies.get_dict(), # 这里需要第一次的cookie

)

print(r2.cookies.get_dict()) # 这个是成功以后的cookie

成功以后就返回登录页面的信息。

基于post登录成功后查看个人详情页。

这里只需要带着登录成功以后的cookie 就可以

#完整代码

import requests

from bs4 import BeautifulSoup

r1 = requests.get('https://github.com/login')

soup = BeautifulSoup(r1.text,features='lxml')

s1 = soup.find(name='input',attrs={'name':'authenticity_token'}).get('value')

r1_cookies = r1.cookies.get_dict()

print(r1_cookies)

print(s1)

r2 = requests.post(

'https://github.com/session',

data ={

'commit':'Sign in',

'utf8':'✓',

'authenticity_token':s1,

'login':'541756569@qq.com',

'password':'密码'

},

cookies = r1.cookies.get_dict(),

)

查看个人详情页

print(r2.cookies.get_dict())

r3 = requests.get(

'https://github.com/13131052183/product', #查看个人的详情页

cookies = r2.cookies.get_dict()

)

print(r3.text)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_846842.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

长尾词推广系统推荐乐云seo_如何进行长尾关键词优化

今天李木seo在这里和大家来说说关于长尾关键词优化的那些事?一个 SEO 做得成功的网站,80%的流量应该来源于长尾关键词,长尾广泛分布于网站的标签、文章、专题等页面,最多的还是文章页,通常一篇文章就是一个…

自动生成网站的工具

​对大部分同学来说,有自己的网站是很酷的事情。我还记得自己第一次亲手搭建个人博客时,真的是满满的成就感! 但不得不说,随着技术的发展和开源,如今现成的东西实在太多了!想要拥有个人网站,基本…

开发在线编程网站

前言初学者学习编程语言时,通常需要安装编程语言对应的环境,以Python为例,要学习Python,你就需要下载Python解释器并安装到本地,对于没有编程经验的人而言,这一步难倒了很多人,所以很多编程学习…

mysql投票网站_ThinkPHP5+jQuery+MySql实现投票功能

这篇文章主要介绍了ThinkPHP5jQueryMySql实现投票功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下ThinkPHP5jQueryMySql实现投票功能,先给大家展示下效果图,如果大家感觉效果不错&#x…

站点html标贴验证,SEO优化之详解百度站点验证

原标题:SEO优化之详解百度站点验证最近有不少SEO新手同学问,百度站点验证怎么搞?。SEO新手问这样的问题也不算奇怪。作为一名“SEO老司机”不懂得如何做百度站点验证,显然是说不过去的。今天就来跟大家聊聊关于“百度站点验证”的那点事。什…

php网站安全狗绕过,绕过网站安全狗拦截,上传Webshell技巧总结 | 附免杀PHP一句话...

原标题:绕过网站安全狗拦截,上传Webshell技巧总结 | 附免杀PHP一句话*本文原创作者:1_2,本文属FreeBuf原创奖励计划,未经许可禁止转载这篇文章我介绍一下我所知道的绕过网站安全狗上传WebShell的方法。思路是&#xff…

百度关键词抓取工具_SEO:想提升关键词排名?你还缺一份seo优化大全

文 | 公关之家 作者:Leon360kSEO工具是网站进行搜索引擎优化过程中提升工作效能与准确性的多种辅助程序。这些工具与优化者者的智慧若用于积极方向,将会为网站的优化提供较大的助力,尤其是使用先进算法的工具会为优化者们更准确的决策参考与指…

ngrok内网穿透映射使用与注册 让外网访问你的网站

一、ngrok安装,使用与注册 1、先打开ngrok注册页面www.ngrok.com,进入sign up 后,发现注册报错,无法正常注册; 2、我们再打开一个界面www.github.com,点击注册,这次可以成功,注意再…

大型网站架构之分布式消息队列

以下是消息队列以下的大纲,本文主要介绍消息队列概述,消息队列应用场景和消息中间件示例(电商,日志系统)。 本次分享大纲 消息队列概述消息队列应用场景消息中间件示例JMS消息服务常用消息队列参考(推荐&a…

网站架构第一篇

Web发展历程 CS时代:富客户端方案。卖软件可以赚钱。 QQ,影音,游戏 Web 1.0时代:主要是单向信息的发布。互联网内容是由少数编辑人员定制的,用户只有看的权限 三大门户网站:新浪、网易、搜狐。 Web 2.0时代…

python 3 爬取某小说网站小说,注释详细

目标:每一个小说保存成一个txt文件 思路:获取每个小说地址(图一),进入后获取每章节地址(图二),然后进入获取该章节内容(图三)保存文件中。循环 效果图&#…

如何用自己电脑做服务器,绑定域名建一个个人网站

使用自己的电脑,下载一个tomcat服务器,并将域名解析到本机,这样就可以发布自己的网站了。不过,关机之后网站便登不上去了。这样做只是为了我们可以更好的开发调试自己的工程,网站上线之后可以让更多的朋友帮你找bug。这…

Android 学习论坛博客及网站推荐

一、博客推荐 1)http://blog.csdn.net/android_tutor(Android开发入门基础,高级进阶) 2)http://blog.csdn.net/hellogv(入门与提高,很多例子值得学习) 3)http://www.c…

【2019.6.11可用】chrome提示“无法添加来自此网站的应用、扩展程序和应用脚本”的解决办法

目前亲测可行的方法有两种,个人推荐第一种。 第一种方法(推荐) 1、在chrome上右键,打开属性。 在目标里添加参数“ --enable-easy-off-store-extension-install”。注意--前加上一个空格 2、【重启浏览器!】打开chr…

猪八戒学做网站之HTML5篇(2):编写网页的工具

一杯清茶还没有喝完,小朱告诉我,他的网页做完了,惊得我下巴都快掉了。 我张大着嘴巴来到小朱的电脑前,看到了他完成的网页,完成情况好像还不错。各位可以看一下,他的网页的完成效果: 说实话&…

猪八戒学做网站之HTML5篇(3):网页不是图片

一大早,被手机的闹铃吵醒。自从做了程序员之后,天天都感觉睡不醒。脑力劳动和体力劳动真不一样,体力劳动累了之后,睡一觉起来就什么事也没有了。而脑力劳动之后,怎么睡都睡不醒。说什么三十年前睡不醒,三十…

猪八戒学做网站之HTML5篇(5):Hello HTML

出了几天差,回来一看,猪八戒正在网上津津有味地看着什么呢。 猪八戒看见我回来了,马上站了起来:“师父,你回来啦!”一边说还一边接过我的行李包。 我把行李包递给猪八戒后问他:“我不在的这几天…

猪八戒学做网站之HTML5篇(6):标签!标签!

“师父,你在看什么呢?” “《南京!南京!》。”我头也不回地回答道。 “那我应该看什么呢?”猪八戒又问。 “标签!标签!”我还是头也没回地回答道。 “啥?”猪八戒一下子没有明白过来…

在VS2008中创建自定义控件(一)创建网站项目和自定义控件项目

本文目的: 1、创建一个创建网站项目。 2、创建一个自定义控件项目。 下文目的: 1、创建一个自定义控件。 2、将自定义控件添加到工具箱中,以便调用。 这两篇博文的最终结果如下图所示。 首先声明,用户控件和自定义控件是不同…

python从网站抓取特定内容

背景 测试需要模拟浏览器的userAgent,从网站上找到一批 http://www.fynas.com/ua 分析 非常普通的table元素维护 约有8K多条,为防止中途中断导致数据丢失选择读取一页写一页,单个文件可能吃力,选择100页数据放入一个文件的方式…