前言
之前学习北京理工嵩天老师的《Python网络爬虫与信息提取》时,爬取亚马逊的一款图书的详细信息时出现以下错误:
![Upload 亚马逊爬虫.PNG failed. Please try again.]
查看请求信息,发现我们一般写的爬虫会默认告诉服务器自己发送了一个Python爬取请求,而一般网站是不允许被爬虫访问的,估计是因为会涉及到商业问题。最后,通过更改User-Agent字段就可以轻易骗过该网站。
那么User-Agent到底是什么呢?
User-Agent会告诉网站服务器,访问者是通过什么工具来请求的,如果是爬虫请求,一般会拒绝,如果是用户浏览器,就会应答。
又该如何使用呢?
调试工具
最简单的方法就是按照下面步骤进行
- 打开你要爬虫的网页
- 按键盘的F12或手动去浏览器右上角的“更多工具”选项选择开发者工具
- 按键盘的F5刷新网页
- 点击Network,再点击Doc
- 点击Headers,查看Request Headers的User-Agent字段,直接复制
- 将刚才复制的User-Agent字段构造成字典形式
什么?你想搞懂这个User-Agent字段,然后自己构建。
User-Agent字段解释
详细版解释: