自建免费的代理ip池

本文介绍了如何自建一个免费的代理IP池,通过获取开源项目中的代理信息,验证代理IP的有效性,并将其保存到JSON文件中。在验证过程中,使用requests库或telnet库检查HTTP响应状态码。最后,展示了如何配置requests库使用这些代理IP进行请求。

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

写在前面

因为爬虫被禁ip这样的反扒真的很凶,但自从建了一个代理ip池以后,反反扒就可以跟的上节奏。当然你也可以上网上各种代理平台自己付费。这些平台当然很方便提供api调用,还不用自己验证。但你不想付费的话,可以看看下面这个国外的开源项目,我是从某网站的评论信息里找到的,下面操作均是基于该网站:https://raw.githubusercontent.com/fate0/proxylist/master/proxy.list
头信息和全局变量:

import json
import telnetlib
import requests

proxy_url = 'https://raw.githubusercontent.com/fate0/proxylist/master/proxy.list'

获取代理的json信息

先打开:https://raw.githubusercontent.com/fate0/proxylist/master/proxy.list ,如果你打不开的话请等下再试,毕竟是个开源的项目,访问人数很多吧。如下图所示:
在这里插入图片描述
很明显每一行是一个json数据,但整个页面你拿到的也不过是字符串而已,每一行末都换行,也就是说每一行末都有"\n",那么思路很清晰,用requests获得整个页面的text(字符串),然后用split('\n') 将每一行分割之后组成的列表,便利这个列表用json.loads()方法,将每一行的字符串转换为json对象,最后取值。

	response = requests.get(proxy_url)
    proxies_list = response.text.split('\n')
    for proxy_str in proxies_list:
        proxy_json = json.loads(proxy_str)
        host = proxy_json['host']
        port = proxy_json['port']
        type = proxy_json['type']

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值