爬虫学习--Day4(网页采集器的实现)
#UA: User-Agent {请求载体的身份标识}
#(反爬机制)UA检测:门户网站的服务器回检测对应请求的载体身份标识,如果检测到请求的载体身份为某一款浏览器就说明该请求时一个正常的请求。但是,如果检测到请求的载体身份标识不是基于某一款浏览器的,则表示该请求为
不正常的请求(爬虫),则服务器端就很有可能拒绝该次请求。
#(反反爬策略)UA伪装
为了让我们每次爬虫请求,都能成功请求,爬虫进行反反爬策略(UA伪装)让怕吃哦那个对应的请求载体身份标识伪装成某一浏览器
1 import requests 2 if __name__=="__main__": 3 #UA伪装:将对应的User-Agent封装到一个字典中 4 headers = { 5 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36' 6 } 7 #指定url路径 8 url = 'https://www.sogou.com/web' 9 # 处理url携带的参数:将参数封装到字典中 10 kw = input('Enter a word:') 11 param = { 12 'query':kw 13 } 14 # 对指定的url发起的请求对应的url是携带参数的,并且请求过程中处理了参数 15 response=requests.get(url=url,params=param,headers=headers) 16 #获取响应数据 17 page_text = response.text 18 #对获取的响应数据进行持久化存储 19 fileName = kw+'.html' 20 with open(fileName,'w',encoding='utf-8') as fp: 21 fp.write(page_text) 22 print(fileName,'保存成功')
测试:
结果: