Как проверить, рабочий ли прокси (с готовым скриптом)
Прокси полезен только тогда, когда он жив, скрывает ваш настоящий IP и достаточно быстр для задачи. Разбираем пять способов проверить все три пункта — вместе с готовым чекером на bash и Python, который можно запустить прямо сейчас.
Что на самом деле значит «рабочий прокси»
Это три отдельные проверки, а не одна.
О прокси говорят «работает», будто это один факт с ответом «да» или «нет». Это не так: прокси может пройти одну проверку и провалить две другие, и каждый провал ломает свою задачу. Нормальная проверка отвечает на три вопроса.
- Он жив? Запрос через него действительно завершается или висит до таймаута? Бесплатные прокси особенно быстро отмирают — часто за считаные часы.
- Он анонимен? Сайт видит IP прокси — или прокси сливает ваш настоящий через заголовки? Прозрачный прокси, передающий ваш настоящий IP-адрес, для приватности хуже, чем ничего.
- Он достаточно быстрый? Живой прокси, добавляющий несколько секунд задержки, сгодится для разовой проверки и безнадёжен для скрапинга в объёме.
Если нужно быстро проверить один прокси, вставьте его в чекер прокси s4m. Если же у вас целый список — например, отфильтрованные записи из бесплатного публичного списка прокси, — используйте скрипты ниже и проверьте всё пакетно.
Пять способов проверить прокси
От одного клика до пакетного скрипта.
Воспользуйтесь онлайн-чекером
Самый быстрый вариант: вставьте HOST:PORT в инструмент /tools/proxy-checker/ и получите живость, время отклика и уровень анонимности. Идеально для одного прокси или быстрой выборочной проверки — ничего устанавливать не нужно.
Проверьте один прокси через curl
Одна команда показывает, жив ли он и какой выходной IP видит мир: сделайте curl через прокси к сервису, возвращающему ваш IP, и сравните ответ со своим настоящим адресом. Совпали — прокси прозрачный и сливает вас.
Проверьте уровень анонимности
Обратитесь к эндпоинту, который отражает ваши заголовки. Высокоанонимный (elite) прокси не шлёт ни Via, ни X-Forwarded-For, выдающих ваше происхождение; анонимный прячет ваш IP, но сообщает, что он прокси; прозрачный передаёт ваш настоящий IP-адрес. Это соответствует фильтрам elite/anonymous/transparent в бесплатном списке.
Измерьте задержку
Для массовой работы одной живости мало. Замеряйте время запроса (скрипты ниже печатают миллисекунды) и выбрасывайте всё, что для вашей задачи слишком медленно. Смотрите также отдельное руководство о честном измерении задержки прокси.
Автоматизируйте весь список скриптом
Для десятков или тысяч прокси пройдитесь циклом по файлу и запишите живой/мёртвый, выходной IP и задержку. Чекеры на bash и Python ниже делают ровно это — скопируйте, сохраните и запустите.
Чекер прокси на bash
Сохраните как proxy-check.sh, положите по одному HOST:PORT в строке в proxies.txt (по умолчанию SOCKS5), затем: bash proxy-check.sh proxies.txt
#!/usr/bin/env bash
# proxy-check.sh — test proxies for liveness, latency and anonymity.
# Usage: bash proxy-check.sh proxies.txt (one HOST:PORT per line, SOCKS5)
set -u
TARGET="https://api.ipify.org"
TIMEOUT=8
myip=$(curl -s --max-time "$TIMEOUT" "$TARGET")
echo "your real IP: $myip"
echo "-------------------------------------------"
while IFS= read -r proxy; do
[ -z "$proxy" ] && continue
start=$(date +%s.%N)
out=$(curl -s --max-time "$TIMEOUT" --socks5-hostname "$proxy" "$TARGET")
code=$?
end=$(date +%s.%N)
if [ $code -ne 0 ] || [ -z "$out" ]; then
printf '%-22s DEAD\n' "$proxy"
continue
fi
ms=$(awk "BEGIN{printf \"%d\", ($end-$start)*1000}")
if [ "$out" = "$myip" ]; then
printf '%-22s ALIVE %5sms TRANSPARENT (leaks your IP!)\n' "$proxy" "$ms"
else
printf '%-22s ALIVE %5sms OK exit=%s\n' "$proxy" "$ms" "$out"
fi
done < "$1"Чекер прокси на Python
Сохраните как proxy_check.py и запустите: pip install "requests[socks]" && python3 proxy_check.py proxies.txt
#!/usr/bin/env python3
"""proxy_check.py — validate proxies for liveness, latency and anonymity.
Usage: python3 proxy_check.py proxies.txt (one HOST:PORT per line)
Requires: pip install "requests[socks]"
"""
import sys, time, requests
TARGET = "https://api.ipify.org"
TIMEOUT = 8
def real_ip():
return requests.get(TARGET, timeout=TIMEOUT).text.strip()
def check(proxy, my_ip):
proxies = {"http": f"socks5h://{proxy}", "https": f"socks5h://{proxy}"}
t0 = time.perf_counter()
try:
exit_ip = requests.get(TARGET, proxies=proxies, timeout=TIMEOUT).text.strip()
except Exception:
return f"{proxy:22} DEAD"
ms = int((time.perf_counter() - t0) * 1000)
if exit_ip == my_ip:
return f"{proxy:22} ALIVE {ms:5}ms TRANSPARENT (leaks your IP!)"
return f"{proxy:22} ALIVE {ms:5}ms OK exit={exit_ip}"
def main():
my_ip = real_ip()
print("your real IP:", my_ip)
print("-" * 43)
with open(sys.argv[1]) as fh:
for line in fh:
p = line.strip()
if p:
print(check(p, my_ip))
if __name__ == "__main__":
main()Как читать результаты
Что означают DEAD, TRANSPARENT и OK.
Оба скрипта печатают одни и те же три вердикта. DEAD значит, что запрос так и не завершился — прокси лежит, заблокирован или не уложился в таймаут; выбрасывайте. TRANSPARENT значит, что прокси ответил, но выходной IP совпадает с вашим настоящим: он передаёт ваш адрес дальше и не даёт никакой анонимности. OK с другим выходным IP и приемлемой цифрой в миллисекундах — это то, что стоит оставить.
Повторяйте проверки с тайм-аутами и повторными попытками. Наш список бесплатных прокси показывает сохранённые результаты проверок. Каталог сохраняет исторические записи, в том числе отмеченные как неработающие. Сохранённый успешный результат не гарантирует соединение сейчас. Посмотрите статус и время проверки, затем проверьте адрес перед использованием. Связанные услуги: датацентровые прокси s4m. Аутентификация или оплата не гарантирует доступность либо принятие запроса целевым сервисом. Связанные темы: как мы измеряем задержку.
Ответы на вопросы
Как понять, что прокси сливает мой настоящий IP-адрес?
Отправьте через прокси запрос к сервису, который возвращает ваш IP, и сравните ответ с настоящим адресом. Если они одинаковы, прокси прозрачный и передаёт ваш адрес дальше — скрипты выше помечают это как TRANSPARENT. Нормальный прокси возвращает другой выходной IP.
Чем различаются elite, anonymous и transparent прокси?
Elite (высокоанонимный) прокси прячет ваш IP и не выдаёт, что прокси вообще используется. Anonymous прячет IP, но заголовками сообщает, что это прокси. Transparent передаёт ваш настоящий IP целиком. В бесплатном списке можно фильтровать именно по этим уровням.
Почему прокси из бесплатного списка так быстро умирают?
Большинство из них — хосты, случайно оставленные открытыми; как только владелец перезагружает машину, ставит обновления или замечает трафик, они исчезают — часто за считаные часы. Поэтому списки нужно перепроверять непрерывно, а не доверять разовому снимку, — и поэтому для работы, которая не имеет права сломаться, существуют платные серверные прокси.
Можно ли использовать скрипт и для HTTP-прокси?
Да. В примерах предполагается SOCKS5 (socks5h), который заодно резолвит DNS удалённо. Для HTTP-прокси смените схему на http:// (curl -x http://HOST:PORT или http:// в словаре proxies в Python) и укажите HTTP-порт прокси, например 3128.
Хватит нянчить мёртвые прокси
Используйте тайм-ауты, повторные попытки и проверки работоспособности. Аутентификация или оплата не гарантирует доступность либо принятие запроса целевым сервисом. Посмотрите статус и время проверки, затем проверьте адрес перед использованием.
Эту страницу нашли по запросу
- как проверить, рабочий ли прокси (с готовым скриптом)
- авторизация прокси для новичков
- бесплатный авторизация прокси
- авторизация прокси
- бесплатные прокси против платных
- VPN для удалённой работы
- http прокси
- vpn kill switch
- http прокси подписка
- как настроить прокси для парсинга
- прокси для парсинга
- список бесплатных прокси без регистрации
- wireguard сравнение
- что такое openvpn
- скачать настройка прокси
- VPN для украины
- что такое socks5 прокси
- как использовать прокси с Python requests
Реальные поисковые фразы, на которые отвечает эта страница — по ссылкам откроются материалы, раскрывающие тему глубже.