前言
在现在Python最火的时代,有一门技术已经被广泛宣传了 -- 爬虫
那爬虫是什么呢?它是按照一定的规则,自动地抓取网络上信息的程序或者脚本
举个简单的例子,腾讯新闻网站上,有统计全国各地的疫情情况
这些疫情,是怎么汇总的呢?
如果只是靠人工手动去收集,那耗费的人力物力将非常的庞大。
那具体该怎么做呢?
其实,这个就是通过爬虫技术,写好脚本,到国家卫健委的官网上以及各个城市的卫健委的官网上去获取到的数据,然后进行归纳总结。
Ps:爬虫技术好,但是不要去触犯法律哟
既然爬虫能获取到网上的各种信息,那当然就会有很多公司,不想要自己的资源被其他人随随便便的获取。
所以,就会有很多平台,会去设置一些反爬虫的手段,比如今天我们要讲到的user-agent
User-Agent
User Agent中文名为用户代理,简称 UA。
它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等等。
也就是说,假设:一个平台,设置了UA权限,必须以浏览器进行访问,当你使用爬虫脚本去访问该网站的时候,就会出现,访问失败、没有权限、或者没有任何资源返回的结果等错误信息。
不带User-Agent的情况
通过git图,你会发现,当我们使用工具去发送请求的时候,user-agent显示的是你工具的版本。
那么当对方平台设置了UA权限的时候,我们通过工具去发起请求的时候,就会提示各种错误,这个就可以好理解了。
带User-Agent的情况
通过git图,你会发现,当我们添加了一个User-Agent请求头,再去执行请求的时候,就可以得到正确的结果了。
并且我们使用工具去发送请求的请求头里 User-Agent也已经发生的改变。
那User-Agent怎么去设置呢?
- 首先,我们要先了解,User-Agent的组成
以谷歌浏览器为例:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36
第一部分:Mozilla/5.0,默认都带上这个值第二部分:(Windows NT 10.0; Win64; x64),表示操作系统版本,Windows NT 10.0就是win10系统,Win64; x64表示的是64位系统第三部分:AppleWebKit/537.36 (KHTML, like Gecko),表示搜索引擎,也就是浏览器内核第四部分:Chrome/79.0.3945.117 Safari/537.36,表示浏览器的版本
- 然后,再了解一下怎么查看user-agent打开浏览器F12,随便访问一个网站,以百度为例
访问到页面后,查看任何一个获取到的资源,都会有一个user-agent。 - 最后,怎么设置呢?
User-Agent是一个头部信息,所有,我们把UA添加到请求头即可。
比如Jmeter:
通过以上的了解,我们就可以知道,当公司的接口做了UA限制的时候,我们把正确的User-Agent的值,添加到请求头即可。
福利时间,UA的操作系统部分
- **Windows系统下:**Windows NT 5.0,表示Windows 2000Windows NT 5.1,表示Windows XPWindows NT 6.0,表示Windows VistaWindows NT 6.1,表示Windows 7Windows NT 6.2,表示Windows 8Windows NT 6.3,表示Windows 8.1Windows NT 10.0,表示 Windows 10Win64; x64,表示64位的系统WOW64,表示32位的应用程序运行于此64位处理器上
- **Linux系统下:**X11; Linux i686X11; Linux x86_64X11; Linux i686 on x86_64
- macOS系统下:
Macintosh; Intel Mac OS X 10_9_0
Macintosh; PPC Mac OS X 10_9_0
Macintosh; Intel Mac OS X 10.12
欢迎来到testingpai.com!
注册 关于