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利用operator模块实现对象的多级排序详解
May 09 Python
python模块smtplib实现纯文本邮件发送功能
May 22 Python
使用python中的in ,not in来检查元素是不是在列表中的方法
Jul 06 Python
实例讲解python中的协程
Oct 08 Python
Python3实现取图片中特定的像素替换指定的颜色示例
Jan 24 Python
使用python PIL库实现简单验证码的去噪方法步骤
May 10 Python
Python 实现Serial 与STM32J进行串口通讯
Dec 18 Python
Python 余弦相似度与皮尔逊相关系数 计算实例
Dec 23 Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
May 19 Python
python中导入 train_test_split提示错误的解决
Jun 19 Python
获取python运行输出的数据并解析存为dataFrame实例
Jul 07 Python
Python 匹配文本并在其上一行追加文本
May 11 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
为什么那些咖啡爱好者大多看不上连锁咖啡店?
2021/03/06 咖啡文化
PHP与javascript对多项选择的处理
2006/10/09 PHP
php中关于普通表单多文件上传的处理方法
2011/03/25 PHP
关于php curl获取301或302转向的网址问题的解决方法
2011/06/02 PHP
CI框架中$this->load->library()用法分析
2016/05/18 PHP
详细解读php的命名空间(二)
2018/02/21 PHP
ThinkPHP5.1框架数据库链接和增删改查操作示例
2019/08/03 PHP
Yii框架的布局文件实例分析
2019/09/04 PHP
Javascript 调试利器 Firebug使用详解六
2009/07/05 Javascript
jQuery setTimeout()函数使用方法
2013/04/07 Javascript
ajax提交表单实现网页无刷新注册示例
2014/05/08 Javascript
jquery访问ashx文件示例代码
2014/08/11 Javascript
js监听键盘事件的方法_原生和jquery的区别详解
2016/10/10 Javascript
bootstrap3 dialog 更强大、更灵活的模态框
2017/04/20 Javascript
在vue中封装可复用的组件方法
2018/03/01 Javascript
vue防止花括号{{}}闪烁v-text和v-html、v-cloak用法示例
2019/03/13 Javascript
VUE注册全局组件和局部组件过程解析
2019/10/10 Javascript
python生成器表达式和列表解析
2016/03/10 Python
python实现简单购物商城
2016/05/21 Python
Python实现的简单排列组合算法示例
2018/07/04 Python
Selenium chrome配置代理Python版的方法
2018/11/29 Python
Django 中间键和上下文处理器的使用
2019/03/17 Python
python3中的eval和exec的区别与联系
2019/10/10 Python
Keras 在fit_generator训练方式中加入图像random_crop操作
2020/07/03 Python
python定时截屏实现
2020/11/02 Python
利用python绘制正态分布曲线
2021/01/04 Python
Magee 1866官网:Donegal粗花呢外套和大衣专家
2019/11/01 全球购物
办公室前台的岗位职责
2013/12/20 职场文书
企业项目策划书
2014/01/11 职场文书
教师党的群众路线学习心得体会
2014/11/04 职场文书
2014年设备管理工作总结
2014/11/26 职场文书
先进个人事迹材料范文
2014/12/30 职场文书
大学生个人总结范文
2015/02/15 职场文书
小学四年级作文之写景
2019/08/23 职场文书
聊聊pytorch测试的时候为何要加上model.eval()
2021/05/23 Python
在python中读取和写入CSV文件详情
2022/06/28 Python