网页采集器-UA伪装
UA伪装
请求载体身份标识的伪装:
User-Agent:
请求载体身份标识,通过浏览器发起的请求,请求载体为浏览器,则该请求的User-Agent为浏览器的身份标识,如果使用爬虫程序发起的请求,则该请求的载体为爬虫程序,则该请求的User-Agent为爬虫程序的身份标识。服务器可以通过该值来判断发起请求的是浏览器还是爬虫程序。
反爬机制:
某些门户网站会对访问该网站的请求中的User-Agent进行捕获和判断,如果该请求的UA为爬虫程序,那么就拒绝该提供请求数据。
反反爬策略:
将爬虫的UA伪装成某一款浏览器的身份标识
import requests
kew_word=input("请输入查询的关键字:")
url="https://www.sogou.com/web"
parm={
'query':kew_word
}
#修改爬虫的UA为浏览器的UA
headers={
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"
}
res=requests.get(url=url,params=parm,headers=headers)
with open(f"{kew_word}.html","w",encoding="utf-8")as fw:
fw.write(res.text)
print("爬取成功")