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

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a519395243/article/details/82463637

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

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

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

找了一会免费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、生成密码文件

扫描二维码关注公众号,回复: 4658046 查看本文章
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测试可以,又可以愉快的爬虫了

猜你喜欢

转载自blog.csdn.net/a519395243/article/details/82463637