1、通过headers反爬虫
对于基本网页的抓取可以自定义headers,添加headers的数据,代理来解决;
2、基于用户行为的发爬虫:例如同一IP短时间内多次访问同一页面,或者同一账户短时间内多次进行相同操作
有些网站的数据抓取必须进行模拟登陆才能抓取到完整的数据,所以要进行模拟登陆;
对于限制抓取频率的,可以设置抓取的频率降低一些;
对于限制ip抓取的可以使用多个代理ip进行抓取,轮询使用代理;
3、动态网页反爬虫:例如爬取的数据是通过ajax请求得到,或者通过JavaScript生成的
针对动态网页的可以使用selenium+phantomjs进行抓取,但是比较慢,所以也可以使用查找接口的方式进行抓取;
4、对部分数据进行加密处理的:例如:我们要抓的数据部分能够抓到,另外的部分加密处理了,是乱码
对部分数据进行加密的,可以使用selenium进行截图,然后使用python自带的 pytesseract库进行识别,但是比较慢最直接的方法是找到加密的方法进行逆向推理。