requests+bs4+lxml直接获取并解析html数据
抓包ajax请求,使用requests获取并解析json数据
反爬严重的网站,使用selenium爬取
设置代理
cookie池
爬取APP:
a.charles/fiddler/wireshark/mitmproxy/anyproxy抓包,appium自动化爬取APP
b.mitmdump对接python脚本直接处理,appium自动化爬取APP
pyspider框架爬取
scrapy/scrapy-redis/scrapyd框架分布式爬取
验证码:
a.极验验证:selenium呼出验证码图案、截图,PIL对比色差、算出位置,selenium匀加速+匀减速模拟人类拖动并验证
b.微博手机版:selenium呼出验证码图案、截图,制作图像模板,selenium呼出验证码图案、截图,使用PIL将截图与图像模板对比色差,匹配成功后按照模板名字中的数字顺序使用selenium进行拖动并验证
c.接入打码平台,selenium呼出验证码图案、截图,发送到打码平台,平台返回坐标,selenium移动到坐标并点击并验证
a.urllib/requests/selenium+chrome/selenium+phantomjs设置代理
b.爬取免费代理网站中的免费代理IP存入redis做代理池,并定期提取检测(访问目标网站),使用flask搭建网站,从redis返回随机代理IP(不适合商用)
c.多台ADSL拨号主机安装tinyproxy做代理,定时拨号获取自己的IP存入远程redis做代理池,使用flask搭建网站,从redis返回随机代理IP(爬取天眼查/IT桔子/搜狗微信)
d.收费代理IP(爬取天眼查/IT桔子/搜狗微信)