Python爬虫通过替换http request header来欺骗浏览器实现登录功能


Posted in Python onJanuary 07, 2018

以豆瓣为例,访问https://www.douban.com/contacts/list 来查看自己关注的人,要登录才能查看。

如果用requests.get()方法获取这个http,没登录只能抓取回一个登录界面,所以我们要用Python登录网站才能抓取想要的网页。

一个简便的方法就是自己在浏览器上登录好,然后通过下图方法(Chrome为例),找到自己的Cookie和User-Agent,然后发送request时用这复制来的header替换掉待发送的request以达到登录的目的,server端会凭这个认为你是已经登录的用户。

Python爬虫通过替换http request header来欺骗浏览器实现登录功能

代码如下:

import requests
headers = {
 'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36',
 'Cookie':'gr_user_id=1f9ea7ea-462a-4a6f-9d55-156631fc6d45; bid=vPYpmmD30-k; ll="118282"; ue="codin; __utmz=30149280.1499577720.27.14.utmcsr=douban.com|utmccn=(referral)|utmcmd=referral|utmcct=/doulist/240962/; __utmv=30149280.3049; _vwo_uuid_v2=F04099A9dd; viewed="27607246_26356432"; ap=1; ps=y; push_noty_num=0; push_doumail_num=0; dbcl2="30496987:gZxPfTZW4y0"; ck=13ey; _pk_ref.100001.8cb4=%5B%22%22%2C%22%22%2C1515153574%2C%22https%3A%2F%2Fbook.douban.com%2Fmine%22%5D; __utma=30149280.833870293.1473539740.1514800523.1515153574.50; __utmc=30149280; _pk_id.100001.8cb4=255d8377ad92c57e.1473520329.20.1515153606.1514628010.'
} #替换成自己的cookie
r = requests.get('https://www.douban.com/contacts/list', headers = headers)
print(r.text)

总结

以上所述是小编个大家介绍的Python爬虫通过替换http request header来欺骗浏览器实现登录 ,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
python BeautifulSoup使用方法详解
Nov 21 Python
利用python批量给云主机配置安全组的方法教程
Jun 21 Python
Python实现的远程登录windows系统功能示例
Jun 21 Python
python实现的发邮件功能示例
Sep 11 Python
python实现把两个二维array叠加成三维array示例
Nov 29 Python
opencv3/C++实现视频读取、视频写入
Dec 11 Python
浅析Django中关于session的使用
Dec 30 Python
Pytorch在dataloader类中设置shuffle的随机数种子方式
Jan 14 Python
python爬虫实例之获取动漫截图
May 31 Python
Python logging模块handlers用法详解
Aug 14 Python
Python爬虫回测股票的实例讲解
Jan 22 Python
Python Pandas 删除列操作
Mar 16 Python
ubuntu环境下python虚拟环境的安装过程
Jan 07 #Python
详解Python核心编程中的浅拷贝与深拷贝
Jan 07 #Python
用python实现的线程池实例代码
Jan 06 #Python
pip matplotlib报错equired packages can not be built解决
Jan 06 #Python
Python实现的朴素贝叶斯分类器示例
Jan 06 #Python
Python使用matplotlib绘制正弦和余弦曲线的方法示例
Jan 06 #Python
Python爬虫中urllib库的进阶学习
Jan 05 #Python
You might like
PHP的FTP学习(三)
2006/10/09 PHP
Laravel框架中实现使用阿里云ACE缓存服务
2015/02/10 PHP
Laravel重写用户登录简单示例
2016/10/08 PHP
PHP对象相关知识总结
2017/04/09 PHP
php中pcntl_fork创建子进程的方法实例
2019/03/14 PHP
响应鼠标变换表格背景或者颜色的代码
2009/03/30 Javascript
jquery ajax例子返回值详解
2012/09/11 Javascript
Extjs的FileUploadField文件上传出现了两个上传按钮
2014/04/29 Javascript
js图片轮播效果实现代码
2020/04/18 Javascript
AngularJs bootstrap搭载前台框架——基础页面
2016/09/01 Javascript
从源码看angular/material2 中 dialog模块的实现方法
2017/10/18 Javascript
JS脚本实现网页自动秒杀点击
2018/01/11 Javascript
angularjs 页面自适应高度的方法
2018/01/17 Javascript
vue el-table实现行内编辑功能
2019/12/11 Javascript
基于JavaScript获取url参数2种方法
2020/04/17 Javascript
python打开网页和暂停实例
2014/09/30 Python
Python 内置函数complex详解
2016/10/23 Python
python密码错误三次锁定(实例讲解)
2017/11/14 Python
Pytorch Tensor的统计属性实例讲解
2019/12/30 Python
Python多重继承之菱形继承的实例详解
2020/02/12 Python
Python xlrd模块导入过程及常用操作
2020/06/10 Python
移动端适配 使px自动转换rem
2019/08/26 HTML / CSS
世界知名接发和假发品牌:Poze Hair
2017/03/08 全球购物
英国殿堂级有机护肤品牌:Rodial
2017/04/17 全球购物
巴西独家产品和现场演示购物网站:Shoptime
2019/07/11 全球购物
农行实习自我鉴定
2013/09/22 职场文书
节水倡议书范文
2014/04/15 职场文书
广告艺术设计专业自荐书
2014/07/08 职场文书
玄武湖导游词
2015/02/05 职场文书
地道战观后感2000字
2015/06/04 职场文书
教师教育教学随笔
2015/08/15 职场文书
员工工作失职检讨书范文!
2019/07/03 职场文书
中秋节作文(五年级)之关于月亮
2019/09/11 职场文书
MySQL连接查询你真的学会了吗?
2021/06/02 MySQL
Python如何识别银行卡卡号?
2021/06/10 Python
详解Redis在SpringBoot工程中的综合应用
2021/10/16 Redis