700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 【Python爬虫笔记】伪装浏览器爬虫

【Python爬虫笔记】伪装浏览器爬虫

时间:2018-09-11 21:06:06

相关推荐

【Python爬虫笔记】伪装浏览器爬虫

【Python爬虫笔记】伪装浏览器爬虫

今天记录的是比较基础的python爬虫(版本:python3.6)中的伪装浏览器爬虫,其原理是通过header键值对的修改进而达到伪装浏览其访问网页的效果,下面以百度首页为例子。

浏览器输入进入百度首页,按下F12进入开发者界面,转到下方图片指定的位置:

可以看到下面有几个包,随便点击一个,找到Header中的Request Headers下的User-Agent,便是需要的关键信息。

下面直接上代码:

#伪装浏览器爬虫from urllib import requestimport reurl = r"/"#构造请求头信息header = {#电脑User-Agent"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36",}#创建自定义请求对象#反爬虫机制1:判断用户是否是浏览器访问#可以通过伪装浏览器进行访问req = request.Request(url, headers=header)response = request.urlopen(req).read().decode()pat = r"<title>(.*?)</title>" #通过正则表达式进行数据清洗data = re.findall(pat, response)print("网页title:",data[0])

运行便可以看到PC端运行的结果为:

网页title: 百度一下,你就知道

把header换成以下语句:

header = {#手机User-Agent"User-Agent": "Mozilla/5.0 (Linux; U; Android 8.1.0; zh-cn; BLA-AL00 Build/HUAWEIBLA-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.132 MQQBrowser/8.9 Mobile Safari/537.36"}

运行结果为:

网页title: 百度一下

这是手机端的运行结果,从而便达到了伪装浏览器的效果。另外User-Agent的值并不唯一,可以网上查找不同的值。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。