Python爬虫通过替换http request header来欺骗浏览器实现登录功能
作者:huahuayu 时间:2021-04-05 21:55:26
以豆瓣为例,访问https://www.douban.com/contacts/list 来查看自己关注的人,要登录才能查看。
如果用requests.get()方法获取这个http,没登录只能抓取回一个登录界面,所以我们要用Python登录网站才能抓取想要的网页。
一个简便的方法就是自己在浏览器上登录好,然后通过下图方法(Chrome为例),找到自己的Cookie和User-Agent,然后发送request时用这复制来的header替换掉待发送的request以达到登录的目的,server端会凭这个认为你是已经登录的用户。
代码如下:
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来欺骗浏览器实现登录 ,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
来源:http://www.cnblogs.com/huahuayu/p/8207037.html
标签:python,爬虫,http,request,header
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
python处理大日志文件
2021-11-09 22:21:14
Python机器学习从ResNet到DenseNet示例详解
2023-04-21 09:19:16
![](https://img.aspxhome.com/file/2023/6/77666_0s.png)
JS简单实现DIV相对于浏览器固定位置不变的方法
2023-08-05 22:30:12
10个最容易犯的HTML标签错误
2010-09-13 12:37:00
![](https://img.aspxhome.com/file/UploadPic/20109/13/01-23s.jpg)
Go for-range 的 value值地址每次都一样的原因解析
2023-09-23 12:59:20
经验:解决DB2中出现的SQL1032N错误现象
2009-09-02 14:10:00
自己重新写了一个JavaScript的对象克隆函数
2008-08-03 16:47:00
Yolov5更换BiFPN的详细步骤总结
2023-01-17 02:51:22
![](https://img.aspxhome.com/file/2023/6/84056_0s.jpg)
DBA_2PC_PENDING 介绍
2009-02-28 10:59:00
python之模拟鼠标键盘动作具体实现
2022-12-23 10:51:29
别人复制你网站的文章时自动加上注释
2009-02-09 13:20:00
最简短的拖动对象js代码实例
2007-10-09 13:33:00
python jinja2模板的使用示例
2023-08-11 05:12:12
Python 统计数据集标签的类别及数目操作
2023-04-08 12:04:09
![](https://img.aspxhome.com/file/2023/8/77678_0s.png)
修改 CentOS 6.x 上默认Python的方法
2023-08-07 10:02:59
总结Python连接CS2000的详细步骤
2023-04-21 20:26:33
![](https://img.aspxhome.com/file/2023/7/70197_0s.png)
Python中内建函数的简单用法说明
2021-09-01 08:19:58
python concurrent.futures模块的使用测试
2023-01-30 16:48:59
![](https://img.aspxhome.com/file/2023/9/91849_0s.jpg)
ASP所有的Session变量获取实现代码
2011-03-11 10:44:00
python得到单词模式的示例
2021-04-22 08:25:48
![](https://img.aspxhome.com/file/2023/9/99569_0s.jpg)