python爬取免费代理并验证可用性

最近需要写个工具,需要大量的ip,又不想花钱买的话~就只能爬取ip代理站点上免费公布出来的代理ip咯~所以用了python写了一个。

脚本开始:

import requests
from lxml import etree


# 获取代理首页的代理
def get_proxy_list():
    url = "https://www.testyuming.com/"
    payload = {}
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36",
        'Accept': 'application/json, text/javascript, */*; q=0.01',
    }
    response = requests.request("GET", url, headers=headers, data=payload)
    res = []
    _ = etree.HTML(response.text)
    type_dct = {
        "HTTP": "http://",
        "HTTPS": "https://"
    }
    data_list = _.xpath("//tbody/tr")
    for data in data_list:
        ip = data.xpath("./td[1]/text()")[0]
        port = data.xpath("./td[2]/text()")[0]
        type = data.xpath("./td[4]/text()")[0]
        res.append(type_dct[type] + ip + ':' + port)
    return res


# 测试代理
def check(proxy):
    href = 'http://www.baidu.com/'
    if 'https' in proxy:
        proxies = {'https': proxy}
    else:
        proxies = {'http': proxy}
    headers = {
        'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 11_2_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4396.0 Safari/537.36'
    }
    try:
        r = requests.get(href, proxies=proxies, timeout=5, headers=headers)
        if r.status_code == 200:
            return True
    except:
        return False


if __name__ == '__main__':
    proxy_list = get_proxy_list()
    print(proxy_list)
    for p in proxy_list:
        print(p, check(p))

获取代理ip的网址大家要去改一改,自动爬取后验证ip是否可用,默认访问百度主页,如果可以访问就返回True,不行就返回False!

1.本站资源可免登陆下载,扫码支付即可下载
2.本站先仅支持支付宝扫码支付,更多方式联系客服!
3.客服QQ:822674928
4.本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有!
5. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
好主题网 » python爬取免费代理并验证可用性

常见问题FAQ

想做更多的模板?程序修改二开?
请联系我们本站客服QQ:822674928
QQ联系不上发送邮箱[email protected]
资源链接失效?密码不对?
如果出现这种情况,可在下面评论留言,或 联系我们客服QQ:822674928 QQ
联系不上发送邮箱[email protected]
免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。

发表评论

提供优质的各类源码、插件、站群程序、软件集合~

立即查看 了解详情