Python爬虫时,想要爬外面的网站,大佬们是用什么做代理池的呢

最近想要爬外面的网站,怕爬多了被封 IP,但是好像没有好用的 X 墙代理池,请问各位大佬是怎么操作的,哪里获取 X 墙代理,或者使用哪些方法不容易被禁 IP 呢


Python爬虫时,想要爬外面的网站,大佬们是用什么做代理池的呢
15 回复

做爬虫代理池,我一般用开源方案自己搭。最常用的是 proxy_pool 这个项目,GitHub上直接搜就有。它自带爬取、校验、存储和接口,部署起来挺方便。

核心就两步:跑起来,然后调接口拿代理。代码大概长这样:

import requests

def get_proxy():
    # 假设你的proxy_pool服务跑在本地5010端口
    try:
        resp = requests.get("http://127.0.0.1:5010/get/").json()
        if resp.get("proxy"):
            return resp["proxy"]
    except:
        return None

def crawl_with_proxy(url):
    proxy = get_proxy()
    if not proxy:
        print("没拿到代理,直接请求")
        return requests.get(url).text
    
    proxies = {
        "http": f"http://{proxy}",
        "https": f"http://{proxy}"
    }
    try:
        resp = requests.get(url, proxies=proxies, timeout=10)
        return resp.text
    except:
        # 如果这个代理挂了,就删掉它
        requests.get(f"http://127.0.0.1:5010/delete/?proxy={proxy}")
        return None

# 用的时候直接调
html = crawl_with_proxy("http://example.com")

自己维护的话,记得定时验证代理是否还活着,不然爬着爬着就断了。

总结:用现成的 proxy_pool 省心。

套一层 fq 代理,再用国外的代理池

vultr, 多开几个,用完就关

有国外的代理池,你在 v 站上搜一下,记得有人介绍过

用 aws 的 ec2 自己架设代理 多注册几个,弄成代理池 下载 m.7zy.net 搜索

国外服务器 + 代理池,代理池想稳定得付费,价格看预算,或者自己买几个廉价 VPS 搭 SS 也行,看目标网站敏感程度

haipproxy 了解下,强推

可以用机场,然后解析订阅地址,然后转成 http 代理,网上能搜到具体教程

去年接过国外几个期刊网站爬虫的外包,直接用了国外的付费代理…好像是每月 100 刀?快爬完的时候发现他们的代理被墙了,直接发邮件退款了😂

已经不被维护了

挺好用的,改改又不是很困难; docker-compose 直接用

老哥,我一直有把廉价机场改造成代理池的想法。但是谷歌搜了很久都没有搜到前人写这个主题的文章。能否细说一下

#13
用 socks5 to http 的工具(关键词 socks5 to http)
然后解析订阅地址(关键词 ssr 订阅解析)

回到顶部