Python常见的反爬及解决方法,值得收藏

本文介绍了Python爬虫中常见的四种反爬技术:User-Agent控制、JS验证、IP限制和robots.txt协议,并提供了相应的解决策略,如设置或随机化User-Agent、使用PhantomJS处理JS验证、通过IP代理池规避IP限制以及理解并考虑遵守robots.txt协议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们都知道Python用来爬数据,为了不让自家的数据被别人随意的爬走,你知道怎么反爬吗?今天播妞带着大家一起见识见识常见的反爬技术。

首先我们来看一下爬虫程序和反爬虫之间的一张逻辑图:
在这里插入图片描述
以下说4种网站反爬虫方式。

1.通过User-Agent来控制访问

无论是浏览器还是爬虫程序,在向服务器发起网络请求的时候,都会发过去一个头文件:headers, 表明身份。

对于爬虫程序来说,最需要注意的字段就是:User-Agent

很多网站都会建立 user-agent白名单,只有属于正常范围的user-agent才能够正常访问。

解决方法:

可以自己设置一下user-agent,或者更好的是,可以从一系列的user-agent里随机挑出一个符合标准的使用。

2.通过JS脚本来防止爬虫

举个例子:如果想爬取某个网站,在请求之前,它会有一个验证页面来验证你是否机器。

它是怎么实现的呢:

他会通过js代码生成一大段随机的数字,然后要求浏览器通过js的运算得出这一串数字的和,再返回给服务器。

解决方法:

使用PhantomJS

  • PhantomJS是一个Python包,他可以在没有图形界面的情况下,完全模拟一个”浏览器“,js脚本验证什么的再也不是问题了。

3.通过IP限制来反爬虫

如果一个固定的ip在短暂的时间内

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值