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

 更新时间:2022年01月06日 16:10:52   作者:小军递  
这篇文章主要介绍了python爬取免费代理并验证是否可用,通过本文给大家介绍了在什么情况下会用到代理并分享脚本的完整代码,需要的朋友可以参考下

分享一个python脚本,使用代理ip来访问网页,方便抓取数据什么的~并自动验证ip是否可以用

什么情况下会用到代理IP?比如你要抓取一个网站数据,该网站有100万条内容,他们做了IP限制,每个IP每小时只能抓1000条,如果单个IP去抓因为受限,需要40天左右才能采集完,如果用了代理IP,不停的切换IP,就可以突破每小时1000条的频率限制,从而提高效率。

脚本开始:

import requests
from lxml import etree
# 获取快代理首页的代理
def get_proxy_list():
    url = "https://www.jxmtjt.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的网址改一改就可以用了,代码我一直在用,大家也可以cnblogs,百度搜索一下有没有免费的代理ip获取网址~

到此这篇关于python爬取免费代理并验证是否可用的文章就介绍到这了,更多相关python爬取免费代理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python判断文件和字符串编码类型的实例

    Python判断文件和字符串编码类型的实例

    下面小编就为大家分享一篇Python判断文件和字符串编码类型的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • Python绘制柱状图可视化神器pyecharts

    Python绘制柱状图可视化神器pyecharts

    这篇文章主要介绍了Python绘制柱状图可视化神器pyecharts,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • pandas的唯一值、值计数以及成员资格的示例

    pandas的唯一值、值计数以及成员资格的示例

    今天小编就为大家分享一篇pandas的唯一值、值计数以及成员资格的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • Jupyter加载文件的实现方法

    Jupyter加载文件的实现方法

    这篇文章主要介绍了Jupyter加载文件的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • Python中为feedparser设置超时时间避免堵塞

    Python中为feedparser设置超时时间避免堵塞

    为feedparser设置一个超时时间,可是feedparser并没有提供这个功能,只好采用其他方法了,感兴趣的朋友可以看看
    2014-09-09
  • Python HTTP下载文件并显示下载进度条功能的实现

    Python HTTP下载文件并显示下载进度条功能的实现

    这篇文章主要介绍了Python HTTP下载文件并显示下载进度条功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • python写的本地WIFI密码查看器的具体代码

    python写的本地WIFI密码查看器的具体代码

    本文主要分享一个本地wifi密码查看器,用python实现的,代码简单易懂,感兴趣的朋友跟随小编一起看看吧
    2024-06-06
  • 深入理解python中的select模块

    深入理解python中的select模块

    这篇文章主要介绍了python中select模块的相关资料,Python中的select模块专注于I/O多路复用,提供了select、poll和epoll三个方法,文中还详细的介绍了select和poll,因为poll与select相差不大,所以本文不作介绍,需要的朋友们下面来一起看看吧。
    2017-04-04
  • Python TKinter如何自动关闭主窗口

    Python TKinter如何自动关闭主窗口

    这篇文章主要介绍了Python TKinter如何自动关闭主窗口,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • 利用Python绘制Jazz网络图的例子

    利用Python绘制Jazz网络图的例子

    今天小编就为大家分享一篇利用Python绘制Jazz网络图的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11

最新评论