配置vps服务器,拨号换ip(一)

配置vps服务器,拨号换ip(一

    • 原创 ManZZH 阿华code
    • 配置:
    • adsl linux拨号教程:
    • adsl拨号方法:
    • 安装Python3:
    • 安装tinyproxy:
      • 2.把安装源换成阿里云的安装源(PS:如果你vps的安装源速度可以的话 可以忽略第2步)
      • 安装tinyproxy
      • 测试 tinyproxy 是否安装成功
    • 配置tinyproxy:
      • 安装vim (需要用vim编辑文件)
      • 重启
      • 查看tinyproxy 运行状态
      • 测试代理
      • 代理如果不可用

原创 ManZZH 阿华code

阿华code
配置vps服务器,拨号换ip(一)

1).高匿名代理IP:

http://h.zhimaruanjian.com/getapi/

特点:

一次能提取数十/百个IP

优势:

使用最方便,调用商家API接口,即可提取代理IP使用

劣势:

质量最不好,扫描IP/鱼目混珠,海量抓取时成本高

费用:20/s换一次IP 4320IP/天 0.04/ip/元 172元/天=5000元/月 使用方法:

q = Queue.Queue()
def get_proxy():
if q.empty():
res = resquests.get(‘xxx’).json()
for i in res[‘proxy’]:
q.put(i)
else:
return q.get()

def crawl():
proxy = get_proxy()
r = res = resquests.get(‘xxx’,proies = proxy)

2).借助VPS主机进行adsl拨号换IP:

特点:

使用adsl拨号一次,每播一次就切换一次IP

优势:

成本低,质量比高匿好,也可配置成代理IP

劣势:

使用配置相对麻烦,性能受VPS主机影响较多(短时间高频拨号会失败,vps主机长时间运行无响应,拨号 等待时间长)

费用:

固定费用80-150/月/台 IP无限制切换

配置:

http://www.sunnet365.com/

http://www.5jwl.com/pppoevps/

购买vps主机,vps主机上可以使用adsl拨号

adsl linux拨号教程:

http://www.5jwl.com/style/info/shownews.asp?id=1383

adsl拨号方法:

(每个商家的拨号方法不一致 先在商家网站上找或询问商家)

linux上一般的设置方法:

通过pppoe-setup命令配置配置adsl账号密码

使用pppoe-start 拨号切换IP 使用pppoe-stop

关闭拨号 使用方法:

方法1.把抓取程序放在vps主机上运行 需要在vps主机上配置你的爬虫运行环境

特点:vps主机的配置差,不稳定,抓取程序和数据可能会丢失 适合不是很超长时间运行的爬虫。总抓取量在千万级以内

class Crawler:
def init(self):
self._crawl_count = 0
def _do_request(self,url):
try:
r = requests.get(url)
return r.text
except Exception as e:
return ‘’

def _readsl(self):
os.popen(‘rasdial 网络名称 /disconnect’)
time.sleep(6)
os.popen(‘rasdial 网络名称 adsl账号 adsl密码’)
code = os.system(‘ifdown 网络链接名称’)
time.sleep(6)
code = os.system(‘ifup 网络链接名称’)

def start(self):
while True:
text = self._do_request(url)
self._crawl_count++
if self._crawl_count > 100:
self._readsl()
self._crawl_count = 0

适合范围:

适合在vps主机上运行爬虫程序 适合单台vps主机

要使用多台vps主机的IP怎么办?

方法2.把vps主机配置成http代理服务器(注:一些商家不再支持自建http代理)

自建http代理的方法:

在vps主机上安装tinyproxy或squid软件作为http代理服务

vps主机的linux一般都是centos

安装Python3:

yum install gcc make -y

yum install zlib-devel -y

wget http://python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz

tar xf Python-3.6.1.tar.xz

cd Python-3.6.1

./configure --prefix=/usr/local/python3

make

make install

ln -s /usr/local/python3.6/bin/python3.6 /usr/bin/python3

安装tinyproxy:

centos系统使用 yum 命令来安装软件

先安装wget yum install wget -y

2.把安装源换成阿里云的安装源(PS:如果你vps的安装源速度可以的话 可以忽略第2步)

2.1 备份现在的源 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

2.2 下载阿里云安装源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

2.3 清空本地yum缓存 yum clean all

安装epel-release(安装了epel-release才能安装tinyproxy)

yum install epel-release -y

安装tinyproxy

yum install tinyproxy -y

安装openssl(支持https) yum -y install openssl

测试 tinyproxy 是否安装成功

service tinyproxy start

配置tinyproxy:

安装vim (需要用vim编辑文件)

yum install vim -y

用vim打开tinyproxy配置文件编辑

vim /etc/tinyproxy/tinyproxy.conf

可以修改端口 运行指定IP访问代理

重启

tinyproxy service tinyproxy restart

查看tinyproxy 运行状态

systemctl status tinyproxy

测试代理

curl -x ip:port www.baidu.com

代理如果不可用

5.1关闭防火墙 systemctl stop firewalld systemctl disable firewalld 5.2 询问商家是否支持在服务器上建http代理

tips:要让tinyproxy每天稳定运行,每天都重启1-2次tinyproxy

你可能感兴趣的:(python)