代理ip测试并使用

2021-03-08

对于网络上众多的免费代理ip,大都因为失效而不能够使用,因此,应当使用方法来测试代理能否使用。

这里,提供一种测试的思路,为大家参考


获取当前ip

使用网站:http://httpbin.org/get

image-20210307230706041

访问网站,可以看出返回的json中包含当前的本机ip

整理,我们通过使用代理ip来访问这个网站,看能否返回我们的代理ip地址。

有,则表示成功;否,则需修改。

开干!

python code

我们通过python 的requests 库来进行代理ip的使用

def check_proxy_ip(ip):
    porxy_ip=ip.split(':')[0]
    porxy_port=ip.split(':')[1]
    url='http://httpbin.org/get'
    proxy={
        'http':'{}:{}'.format(porxy_ip,porxy_port)
        # 'https':'{}:{}'.format(porxy_ip,porxy_port)
        }
    try:
        response=requests.get(url=url,proxies=proxy,timeout=10)
        data=json.loads(response.text)
        print(response.text)
        if ip in data['origin'].split(', '):
            print(ip+'     success!')
            return True
    except:
        print(ip+'     fail!')
        return False

核心思想

使用的核心代理-requests请求时,带上代理ip

requests.get(url=url,proxies=proxy,timeout=10)

image-20210307231431651

通过打印可以得知,当前代理ip是透明代理。

这里,我们需要注意请求的网站的http类型。

如果是http,我们需要修改proxy数组为http;

如果是https,我们需要修改proxy数组为https。

具体按照网络请求类型进行使用。

至此,结束。