D丶个人博客



centos服务器搭建代理IP 给 Python爬虫使用-centos7服务器 用Squid搭建HTTP代理,给python 爬 网站用 | D丶个人博客

centos服务器搭建代理IP 给 Python爬虫使用

centos7服务器 用Squid搭建HTTP代理,给python 爬 网站用


centos7服务器 用Squid搭建HTTP代理,给python 爬 网站用

python 爬一个网站次数太多,被封IP,就用代理IP解决

可去西刺免费代理IP网站找免费代理IP(http://www.xicidaili.com/

20180906163614125.png

找了一会免费IP,发现不是不能用就是太慢,决定自己用服务器搭建一个代理IP

先上python 代码

from urllib import request
 
if __name__ == "__main__":
    #访问网址
    url = 'http://www.wuxiaodong.cn'
    #这是代理IP
    proxy = {'http':'222.221.11.119:3128'}
    #创建ProxyHandler
    proxy_support = request.ProxyHandler(proxy)
    #创建Opener
    opener = request.build_opener(proxy_support)
    #添加User Angent
    opener.addheaders = [('User-Agent','Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36')]
    #安装OPener
    request.install_opener(opener)
    #使用自己安装好的Opener
    response = request.urlopen(url,timeout=5)
    #读取相应信息并解码
    html = response.read().decode("utf-8")
    #打印信息
    print(html)


搭建服务器:

1、yum 安装 squid (-y 全自动安装)

yum install squid -y
yum install httpd-tools -y

2、生成密码文件

mkdir /etc/squid3/
#username 是用户名
htpasswd -cd /etc/squid3/passwords username
#提示输入密码,输入即可

3、配置squid.conf文件

vi /etc/squid/squid.conf

  配置文件最后加入

auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid3/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
 
#这里是端口号,可以按需修改,同时监听ipv6和ipv4的端口
http_port 0.0.0.0:3128
 
# 设置来源IP白名单,增加的这两行要在 http_access deny all 前面
 
acl client src 122.55.87.125
http_access allow client
# And finally deny all other access to this proxy
http_access deny all


4、修改完配置文件后 启动

#启动
systemctl start squid.service
#配置开机自启动
systemctl enable squid.service

5、如果配置文件有错,会启动不了,检查下重新启动


配上前面的python 代码,换了代理IP测试可以,又可以愉快的爬虫了



评论


About ME

about me

程序猿

热爱生活的程序猿 ,QQ:519395243

我要这天,再遮不住我眼,要这地,再埋不了我心,要这众生,都明白我意,要那诸佛,都烟消云散。 ​​​​

Contact ME

QQ:519395243

TAG cloud

友情链接