欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

Python反爬机制介绍

时间:2023-04-25
一.UA检测与UA伪装

UA.User-Agent(请求载体的身份标识)
UA检测:.门户网站的服务器会检测对应请求的载体身份标识.如果检测到请求的载体身份标识为某一款浏览器,说明该请求是一个正常的请求,但是如果检测到请求的载体体身份标识不是基于某一款浏览器的.则表示该请求不是正常的请求(爬虫),则会拒绝该请求
UA伪装:.让爬虫对应的请求载体身分标识伪装成某一款浏览器

写以下两行代码即可

headers={ 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:97.0) Gecko/20100101 Firefox/97.0' }

response = requests.get(url=url,params=param,headers=headers)

# coding=UTF-8import sysreload(sys)sys.setdefaultencoding('utf8')import requestsif __name__ == '__main__': #UA伪装:将对应的User-Agent封装到一个字典中 headers={ 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:97.0) Gecko/20100101 Firefox/97.0' } #处理url携带的参数:封装到字典中 url='https://www.sogou.com/web?' kw=raw_input('你想要爬取什么:') param={ 'query':kw } #对指定的urL发起的请求对应的url是携带参数的,并且请求过程中处理了参数 response = requests.get(url=url,params=param,headers=headers) page_text = response.text fileName = kw+'.html' with open(fileName.decode('utf-8'),'w') as fp: fp.write(page_text) print (fileName,'保存成功!!!')

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。