一、前言
刚才爬取了京东商品的页面,
很多网页对爬虫有所限制,或者通过Robots协议或者通过requests headers来限制。
下图为亚马逊的robots协议,通过www.amazon.cn/robots.txt进行查看。
可以看出亚马逊对爬虫很限制。所以需要对其headers进行更改,使亚马逊识别不出是用python程序进行访问的。
user-agent:*
disallow:/
这是禁止所有爬虫访问任何目录的代码
user-agent:*
disallow:
这是允许所有爬虫访问任何目录的代码
二、进行爬取
先在亚马逊网页上--F12--network--headers ---找到user-agent.
三、全代码
更改头部信息
kv = {
"User - Agent":"Mozilla / 5.0(Windows NT 10.0; WOW64) AppleWebKit / 537.36(KHTML, like Gecko) Chrome / 67.0 .3396.79 Safari / 537.36"
}
kv 是任意的名字,你也可以用headers。
"User - Agent":"Mozilla / 5.0(Windows NT 10.0; WOW64) AppleWebKit / 537.36(KHTML, like Gecko) Chrome / 67.0 .3396.79 Safari / 537.36"就是你查找的headers。
print(r.status_code)验证是否可以访问网络。
四、小结
很多网站对爬虫有所限制,可以先看一下该网站的robots协议,就是某个网站/robots.tex。例如www.baidu.com/robots.txt,从而查看哪些是可以用爬虫访问的。
通过更改头部信息就可以进行访问了。