使用tinyproxy进行ip代理
爬虫经常用到ip代理。解决方案无非几种:
1.网络上寻找一些免费代理,优点:免费不限量;缺点:可用性较低,验证费时间费资源。一些有免费代理的网站,西刺代理,站大爷,89免费代理等等,网上可以搜出一大堆。
2.购买代理ip,和找免费的差不多,一般有免费代理ip的网站基本都有收费的api。优点:可用性较高,较稳定。缺点:要钱。严格说,这个也不算缺点,要钱很多人也能接受,带来的方便还是很大程度的。
3.自己搭建ip代理,自己租服务器自己搭。优点:稳定,可控。缺点:麻烦,成本高。
暂时接触过的就这几种,不同的场景使用不同的方案。
目前有需要一个稳定ip,于是整一台服务器自己搭一下就可以。搭建代理也有很多种协议,工具,这里使用tinyproxy,简单方便。
安装配置流程:
一、首先安装tinyproxy
执行命令 yum -y install tinyproxy
找不到安装包的时候可以装一下epel。
安装 yum install epel-release
二、配置
编辑tinyproxy的配置文件
vi /etc/tinyproxy/tinyproxy.conf
1.更改端口,默认8888。可以更改为自己喜欢的端口,也可不修改,直接使用8888端口。
找到”Port”字样,修改紧跟其后的数字即可。
2.修改允许连接代理的ip。默认只允许本地。
找到”Allow”字样,修改其后的ip,如有多个,可写多个Allow。这里选择注释掉,允许所有ip连接。
3.开启服务
使用命令
service tinyproxy start 或
/bin/systemctl start tinyproxy.service
三、验证
多种验证方式
可以使用curl,在需要代理的机器上执行命令。
1.执行:
curl -x 180.123.148.125:4396 httpbin.org/get
返回:
2.执行:
curl ip.sb –proxy 180.123.148.125:4396
返回
也可以使用其他验证方式,如浏览器使用此代理,访问获取本地ip的网站等。
若验证失败,可能是端口没开,使用iptables开放端口。
iptables -I INPUT -p tcp –dport 4396 -j ACCEPT
tinyproxy总结:
*tinyproxy对于IP代理来说满足了最基本的需求。
*资源消耗较小,配置简单。
*http,https均支持。
*这种代理方式是透明代理。