爬取搜狗指定词条对应的搜索结果页面(简易网页采集器)
#UA检测:门户网站的服务器会检测对应请求的载体身份标识,如果检测到请求载体的身份标识为某一款浏览器,说明是正常用户通过浏览器发起的正常的请求
# 如果检测到非浏览器发起的请求,则表示请求可能为不正常的请求(爬虫),那么有可能就会拒绝该请求
#UA:User-Agent:(请求身份载体的身份标识)
import requests
if __name__ == '__main__':
# UA伪装:将对应的User-Agent封装到一个字典中
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36'
}
url='https://sogou.com/web?'
# 处理url携带的参数:封装到字典中
kw = input('enter a word')
param ={
'query':kw
}
#对指定的url发起的请求 对应的url是携带参数的,并且在请求过程中处理了参数
response = requests.get(url=url, params=param,headers=headers)
page_text = response.text
fileName = kw+'.html'
with open(fileName, 'w', encoding='utf-8') as fp:
fp.write(page_text)
print(fileName,'保存成功!!!')
其中UA检测是反爬技术 UA伪装是来针对这种技术进行爬取