ProxyHealthList

Главная / Сценарии / Веб-скрейпинг

Бесплатные прокси для веб-скрейпинга

Скрейпинг с одного IP быстро приводит к бану. Ротация свежего проверенного списка распределяет запросы по многим IP — вот как это сделать с бесплатным списком, проверяемым каждый час.

Скачать список (JSON) Быстрые прокси (TXT)

Зачем ротировать прокси

Большинство сайтов ограничивают или банят IP, отправляющий слишком много запросов. Пул прокси заставляет каждый запрос (или пакет) выходить с другого адреса, поэтому ни один IP не упирается в лимит. С бесплатными прокси любой может умереть за минуты, поэтому надёжный шаблон — ротация + повтор по многим проверенным прокси, а не опора на один.

Ротация проверенного списка в Python

Этот пример загружает JSON-список (уже отсортированный от быстрых к медленным) и перебирает его, повторяя со следующим прокси при сбое.

import requests

LIST = "https://raw.githubusercontent.com/xyzs996/free-proxy-health-list/main/proxies/all/data.json"

# 1
pool = requests.get(LIST, timeout=15).json()

def scheme(p):
    proto = p["protocol"]; host = p["proxy"]
    return f"socks5h://{host}" if proto.startswith("socks5") else \
           f"socks4://{host}" if proto.startswith("socks4") else f"http://{host}"

def fetch(url):
    for p in pool:                       # 2
        px = scheme(p)
        try:
            r = requests.get(url, proxies={"http": px, "https": px}, timeout=8)
            if r.ok:
                return r.text
        except requests.RequestException:
            continue                     # 3
    raise RuntimeError("all proxies failed")

print(fetch("https://httpbin.org/ip")[:200])

Делайте вежливо

  1. Добавьте задержку с джиттером между запросами (напр. 1-5 с).
  2. Задайте реалистичный User-Agent.
  3. Соблюдайте robots.txt и условия сайта.
  4. Делайте backoff при 429 Too Many Requests.
  5. Периодически обновляйте список — он перепроверяется каждый час.

Собирайте только те данные, которые вам разрешено использовать. Не используйте прокси для обхода контроля доступа или нарушения условий сайта.

Частые вопросы

Годятся ли бесплатные прокси для скрейпинга?

Отлично подходят для небольшого и среднего скрейпинга публичных страниц, тестов и прототипов. Отдельные прокси быстро умирают, поэтому ротируйте и повторяйте по многим.

Как не получить бан по IP?

Ротируйте по запросу, добавляйте задержки и джиттер, используйте реалистичный User-Agent, соблюдайте robots.txt и делайте backoff на 429.

HTTP или SOCKS5 для скрейпинга?

Оба подходят. HTTP проще; SOCKS5 резолвит DNS через прокси.

Связанное