Como definir o endereço de proxy http para o wget sob o windows?

11

Se você executou sem parâmetros, meu wget imprime:

D:\>wget
SYSTEM_WGETRC = c:/progra~1/wget/etc/wgetrc
syswgetrc = c:/progra~1/wget/etc/wgetrc
D:\Apps\Util\wget: missing URL
Usage: D:\Apps\Util\wget [OPTION]... [URL]...

Try 'D:\Apps\Util\wget --help' for more options.

Isso provavelmente significa que é o arquivo wgetrc in c:/progra~1/wget/etc/wgetrc . Infelizmente, esse local não está disponível para programas não-raiz. Eu estava pensando que eu posso modificar as variáveis de ambiente SYSTEM_WGETRC ou syswgetrc , mas isso parece não ter efeito

D:\>echo %SYSTEM_WGETRC%
d:\apps\util\wgetrc

D:\>echo %syswgetrc%
D:\APPS\Util\wgetrc
    
por Suzan Cioc 01.01.2013 / 17:07

3 respostas

9

wget --help não diz muito. Para obter mais detalhes, consulte o manual do wget on-line ou man wget (são coisas diferentes , muitas vezes vale a pena verificar cada um)

Em suma, aqui está um exemplo

C:\sdf>wget -e http_proxy=127.0.0.1:8118 www.google.com

e outro

C:\sdf>set http_proxy=127.0.0.1:8118
C:\sdf>wget www.google.com

O manual menciona wgetrc comandos . Você vê algumas coisas sobre os proxies http listados aqui.

6.3 Wgetrc Commands

  • http_proxy = string
    Use string as http proxy, instead of the one specified in environment.
  • https_proxy = string
    Use string as https proxy, instead of the one specified in environment.

8.1 Proxies

Wget supports proxies for both http and ftp retrievals. The standard way to specify proxy location, which Wget recognizes, is using the following environment variables:

  • http_proxy
  • https_proxy
    If set, the http_proxy and https_proxy variables should contain the urls of the proxies for http and https connections respectively.

adicionado

Sobre a página do manual do wget e o "manual do wget".

As páginas man na linha de comando estão atualizadas, mas o manual (uma entidade diferente da manpage) nem sempre é uma versão wget atualizada. Como de escrever (setembro 2015) é. link Você pode ver a versão na parte superior e verificar se ela é a mais recente link mostra datas também. (Você vê no archive.org que, por exemplo, em novembro de 2013, o manual do GNU estava muito desatualizado. Em novembro de 2013, mesmo em março de 2014, eles ainda exibiam o wget 1.13.4, que era de 2011)

Para a manpage, se você está checando a partir da linha de comando, então deve ser a versão que você está usando, assim você pode estar bem lá apenas certificando-se de que seu comando está atualizado / atualizando-o. Você pode querer verificar se a / qualquer fonte online que você está usando está mostrando a última página do manual. Este parece bem link links para link Você também pode verificar a versão lá no link ftp para ter certeza de que é a última versão.

    
por 01.01.2013 / 21:01
1

Acho que você só quer definir a variável de ambiente HTTP_PROXY .

De: link :

Wget supports proxies for both http and ftp retrievals. The standard way to specify proxy location, which Wget recognizes, is using the following environment variables:

http_proxy
https_proxy

If set, the http_proxy and https_proxy variables should contain the urls of the proxies for http and https connections respectively.

    
por 01.01.2013 / 19:18
1

A resposta de Barlop em geral é boa, mas alguns comentários:

na linha de comando do dos / windows ou arquivo de lote, você especifica

set http[s]_proxy=http[s]://proxyserver:port/

então o wget funciona bem.

normalmente também recebe credenciais de logon único do Windows se você estiver em uma rede da empresa com autenticação NTLM contra o proxy (não é necessário se preocupar com o domínio - barra invertida - usuário)

    
por 27.12.2013 / 10:48

Tags