
Как использовать Wget через прокси: команды и настройка
GNU Wget подключается к HTTP-прокси через параметры запуска, переменные окружения или конфигурационный файл. Ниже приведены команды для загрузки HTTPS-страницы, авторизации и проверки ошибок. Примеры относятся к GNU Wget 1.x.
Быстрый запуск Wget через прокси
Пример для Bash на Linux, macOS или в WSL. Введите полный HTTP-адрес прокси с портом из кабинета. Для сервера без пароля или с разрешением по IP выполните:
read -r -p "URL HTTP-прокси с портом: " proxy_url
wget -e use_proxy=on -e "https_proxy=$proxy_url" -e no_proxy= \
--timeout=20 --tries=1 -O page.html https://proxywing.com/ru/
Команда сохраняет ответ в page.html в текущей папке. Существующий файл с таким именем будет перезаписан. При ошибке 407 перейдите к авторизации ниже. Для другого сайта замените последний URL на адрес нужной страницы.
Что умеет GNU Wget
Wget загружает ресурсы по HTTP, HTTPS и FTP, поддерживает продолжение загрузки и рекурсивный обход ссылок. JavaScript страницы он не выполняет.

HTTP-прокси может передавать соединение к HTTPS-сайту через CONNECT. Имя переменной https_proxy описывает маршрут HTTPS-запросов и само по себе не означает TLS-соединение с сервером прокси.
Установка и проверка версии
Linux и macOS
Сначала проверьте наличие утилиты:
wget --version
В Debian или Ubuntu:
sudo apt update
sudo apt install wget
В Fedora:
sudo dnf install wget
На macOS при уже установленном Homebrew:
brew install wget
Windows и PowerShell
В Windows PowerShell 5.1 имя wget может быть псевдонимом Invoke-WebRequest. Его параметры отличаются от GNU Wget. Проверьте запускаемую команду:
Get-Command wget -All
Для GNU Wget используйте WSL с установленным пакетом либо проверенную Windows-сборку wget.exe. В случае отдельной сборки обращайтесь к исполняемому файлу явно:
wget.exe --version
Копировать программу в System32 для запуска не требуется. Примеры Bash выполняются в Bash; синтаксис переменных PowerShell отличается.
Полезные параметры загрузки
| Параметр | Назначение |
|---|---|
| -O page.html | Записать ответ в указанный файл |
| -c | Попытаться продолжить загрузку при поддержке сервера |
| -i urls.txt | Прочитать URL из файла, по одному в строке |
| –spider | Проверить ресурс без обычного сохранения файла |
| –timeout=20 | Задать сетевые тайм-ауты |
| –tries=1 | Выполнить одну попытку |
| –server-response | Показать заголовки ответа |
Начните диагностику с одного URL и ограниченного числа попыток. Рекурсивный обход увеличивает количество запросов и расход трафика. Он не выполняет JavaScript как полноценный браузер.
Адрес прокси, логин и пароль
Авторизация в Bash
Пример запрашивает реквизиты отдельно, поэтому пароль не записывается буквальным текстом в историю команд. Во время запуска аргумент с паролем всё равно может быть доступен средствам просмотра процессов.
read -r -p "URL HTTP-прокси с портом: " proxy_url
read -r -p "Логин прокси: " proxy_user
read -r -s -p "Пароль прокси: " proxy_password
printf '\n'
wget -e use_proxy=on -e "https_proxy=$proxy_url" -e no_proxy= \
--proxy-user="$proxy_user" --proxy-password="$proxy_password" \
--timeout=20 --tries=1 -O page.html https://proxywing.com/ru/
unset proxy_password
Учётные данные сайта задаются отдельно. Для прокси-аутентификации GNU Wget использует Basic; проверьте совместимость, если сервер требует другой механизм.
Переменные окружения в Bash
После ввода proxy_url задайте маршрут:
export http_proxy="$proxy_url"
export https_proxy="$proxy_url"
wget --timeout=20 --tries=1 -O page.html https://proxywing.com/ru/
Переменные действуют для текущей оболочки и её дочерних процессов. Значения из wgetrc или -e могут переопределять окружение. no_proxy содержит исключения для прямого доступа.

Запуск в PowerShell
Этот вариант требует установленного GNU wget.exe:
$proxyUrl = Read-Host "URL HTTP-прокси с портом"
wget.exe -e use_proxy=on -e "https_proxy=$proxyUrl" -e no_proxy= --timeout=20 --tries=1 -O page.html https://proxywing.com/ru/
Конфигурационный файл
В wgetrc можно задать http_proxy, https_proxy, use_proxy, proxy_user и proxy_password. В Unix пользовательский файл обычно находится по пути ~/.wgetrc. Для отдельного файла используйте:
wget --config=proxy-wgetrc --timeout=20 --tries=1 -O page.html https://proxywing.com/ru/
Перед запуском создайте proxy-wgetrc со своими параметрами. Если файл содержит пароль, ограничьте доступ и исключите его из репозитория.
Поддерживает ли Wget SOCKS5
У GNU Wget 1.x нет встроенной настройки SOCKS5, аналогичной curl. Переменные socks_proxy или all_proxy сами по себе её не добавляют. Используйте HTTP-вход своего провайдера. Если доступен только SOCKS5, выберите совместимый клиент или curl.
Ротация IP при работе с Wget
Wget использует переданный сервер. Если выдан ротационный шлюз, сменой выходного IP управляет провайдер. Правило может зависеть от нового соединения, интервала или параметров сессии.
Для связанных запросов с cookies сохраняйте идентификатор sticky-сессии. Новая команда Wget не всегда означает новый IP. Критерии режима описаны в гайде по прокси для парсинга. Ротация не исправляет отсутствие авторизации или ограничение частоты запросов.
Ошибки Wget через прокси
| Ошибка | Что проверить |
|---|---|
| 407 Proxy Authentication Required | Реквизиты прокси и схему авторизации |
| Connection refused или тайм-аут | Адрес, порт, доступность и разрешённый IP |
| Ошибка разрешения имени | Домен шлюза, DNS и обычное подключение |
| Ошибка сертификата | Время устройства и доверенную цепочку |
| 403 от целевого ресурса | Права доступа и политику сайта |
| 429 | Частоту запросов и условия повторной попытки |
| Файл не содержит нужных данных | Статус ответа, редирект, страницу входа или JavaScript |
Для просмотра ответа добавьте –server-response. Не отключайте проверку сертификата как постоянное исправление.
Как отключить прокси для одного запуска
wget --no-proxy --timeout=20 --tries=1 -O direct.html https://proxywing.com/ru/
–no-proxy отменяет выбор прокси внутри Wget. Отдельный VPN или системный клиент маршрутизации может продолжить влиять на соединение.

Wget или curl
Wget подходит для файлов, продолжения загрузки и обхода ссылок. curl предоставляет подробное управление запросом и прямую поддержку SOCKS5. Обе утилиты не выполняют JavaScript как браузер.
Если нужен SOCKS5 или диагностика соединения, используйте инструкцию по curl через прокси.
Где купить прокси для Wget
Выберите прокси для парсинга в ProxyWing и используйте HTTP-вход для GNU Wget. Для постоянного адреса сравните ISP-продукт, для разных локаций и выходных IP выберите резидентский пул.
Для резидентских прокси действует промокод WINGRESI10: скидка 10% на резидентские прокси ProxyWing.
Проверьте один URL, код ответа и сохранённое содержимое перед рабочей загрузкой. Соединение с прокси ещё не подтверждает получение нужных данных.

Статью написал:
Руководитель продукта и операций поддержки
Максимилиан выстроил службу поддержки Proxywing с нуля, превратив разрозненные процессы в структурированный, самостоятельный отдел с задокументированными рабочими процессами, чёткими путями эскалации и стабильным качеством сервиса. Сегодня он выступает связующим звеном между CEO и инженерными командами, переводя бизнес-приоритеты в конкретные задачи и обеспечивая своевременную реализацию проектов, связанных с прокси-инфраструктурой. Академическая база в области психологии — с формальной подготовкой в методологии исследований и анализе данных — усиливает его подход к проектированию процессов и интерпретации обратной связи от пользователей. Вне работы Максимилиан исследует пересечения человеческого поведения, принятия решений и продуктового мышления.
Все статьи автора (68)

