爬虫与反爬虫与反反爬
爬虫的流程:
1.请求网页,获取响应结果
2.解析网页,提取数据
3.数据持久化(写入存放位置)
反爬与反反爬
1.User-Agent:将爬虫伪装成浏览器。例如:豆瓣电影top250,职友集
2.文字反爬:将页面中重要信息使用符号进行隐藏。例如:猫眼,瓜子等
3.动态页面:使用selenium模块(自动化测试的模块),能够模拟人的行为,使用浏览器。
4.人机验证:九宫格选图片、选成语词语、图片+计算公式、字母数字验证码、滑块验证、短信验证等
九宫格选图片–深度学习:https://cuiqingcai.com/36060.heml
选成语词语–超级鹰
图片+计算公式、字母数字验证码–光学文字识别(OCR):easyocr、百度飞桨、百度AI开发者平台等
滑块验证:selenium,pyautogui --> 引入对应的物理原理。
短信验证:等待、接码平台。
5.封IP:代理IP:极光代理,蘑菇代理,站大爷,芝麻代理等
6.检测selenium:滑块验证无法拖成功。–>1.加入屏蔽selenium代码。2.修改selenium驱动的底层代码。例如淘宝。
7.网页中的数据放到图片中:光学文字识别。
8.登录使用:例如:淘宝。可以在requests中传入对应的cookie信息,或者在selenium中传入cookie。或者使用selenium操作登录的输入框、按钮。
RPA–机器人流程自动化(影刀、八爪鱼、壁虎等)–>从selenium进行的演变
# 休眠 -以秒为单位
# uniform(a,b) 从(a,b)d 范围内随机取浮点数
time.sleep(random.uniform(1,2))