Configuração de proxy para R

Estou enfrentando problema ao conectar R com internet no meu escritório. Pode ser devido a configurações da LAN. Eu tentei as quase todas as maneiras possíveis que eu encontrei na web (veja abaixo), mas ainda em vão.

Acima de todos os methods eu consigo carregar pacotes diretamente do CRAN e também fazer download de arquivos usando o comando download.file

Mas usando os getURL(RCurl) , readHTMLTable(XML) e htmlTreeParse(XML) não consigo extrair dados da web. Estou recebendo o erro ~\nAccess Denied\n~ .

Como definir as configurações de proxy da LAN para o pacote XML em R?

No Mac OS, encontrei a melhor solução aqui . Citando o autor, dois passos simples são:

1) Abra o Terminal e faça o seguinte:

 export http_proxy=http://staff-proxy.ul.ie:8080 export HTTP_PROXY=http://staff-proxy.ul.ie:8080 

2) Execute R e faça o seguinte:

 Sys.setenv(http_proxy="http://staff-proxy.ul.ie:8080") 

verifique isso com:

 Sys.getenv("http_proxy") 

Estou por trás do proxy universitário e essa solução funcionou perfeitamente. O principal problema é exportar os itens no Terminal antes de executar o R, tanto em letras maiúsculas quanto minúsculas.

O problema é com suas opções de curl – o pacote RCurl parece não usar internet2.dll . Você precisa especificar a porta separadamente e provavelmente precisará fornecer seus detalhes de login de usuário como credenciais de rede, por exemplo,

 opts < - list( proxy = "999.999.999.999", proxyusername = "mydomain\\myusername", proxypassword = "mypassword", proxyport = 8080 ) getURL("http://stackoverflow.com", .opts = opts) 

Lembre-se de evitar quaisquer barras invertidas na sua senha. Você também pode precisar envolver o URL em uma chamada para curlEscape .

Para o RStudio, basta fazer isso:

Em primeiro lugar, abra o RStudio como sempre, selecione no menu superior:

FerramentasOpções GlobaisPacotes

Desmarque a opção: Usar biblioteca / proxy do Internet Explorer para HTTP

E depois feche o Rstudio, além disso você tem que:

  1. Encontre o arquivo (.Renviron) no seu computador, provavelmente você o encontrará aqui: C: \ Users \ seu nome de usuário \ Documents. Note que se não existir você pode criá-lo apenas escrevendo este comando no RStudio:

     file.edit('~/.Renviron') 
  2. Adicione estas duas linhas às iniciais do arquivo:

     options(internet.info = 0) http_proxy="http://user_id:password@your_proxy:your_port" 

E é isso..??!!!

Eu tive o mesmo problema no meu escritório e resolvi adicionando o proxy no destino do atalho R; clik no botão direito do ícone R, preferências, e no campo de destino adicionar

 "C:\Program Files\R\your_R_version\bin\Rgui.exe" http_proxy=http://user_id:passwod@your_proxy:your_port/ 

Certifique-se de colocar o diretório onde você tem o programa R instalado. Isso funciona para mim. Espero que esta ajuda.

No Windows 7 eu resolvi isso indo em minhas configurações de ambiente ( tente este link para como ) e adicionando variables ​​de usuário http_proxy e https_proxy com meus detalhes de proxy.

Este post refere-se a problemas de proxy R no * nix. Você deve saber que R tem muitas bibliotecas / methods para buscar dados pela Internet.

Para ‘curl’, ‘libcurl’, ‘wget’ etc, faça o seguinte:

  1. Abra um terminal. Digite o seguinte comando:

     sudo gedit /etc/R/Renviron.site 
  2. Digite as seguintes linhas:

     http_proxy='http://username:password@abc.com:port/' https_proxy='https://username:password@xyz.com:port/' 

    Substitua username , password , abc.com , xyz.com e port com essas configurações específicas para sua rede.

  3. Saia do R e inicie novamente.

Isso deve resolver seu problema com o método ‘libcurl’ e ‘curl’. No entanto, eu não tentei com ‘httr’. Uma maneira de fazer isso com ‘httr’ somente para essa session é a seguinte:

 library(httr) set_config(use_proxy(url="abc.com",port=8080, username="username", password="password")) 

Você precisa replace as configurações específicas do seu n / w em campos relevantes.

Se você iniciar o R ​​a partir de um ícone na área de trabalho, você pode adicionar o sinalizador --internet à linha de destino (clique com o botão direito -> Propriedades) por exemplo

 "C:\Program Files\R\R-2.8.1\bin\Rgui.exe" --internet2 

Inspirado por todas as respostas relacionadas na internet, finalmente encontrei a solução para configurar corretamente o Proxy para R e Rstudio.

Existem vários passos a seguir, talvez alguns dos passos sejam inúteis, mas a combinação funciona!

  1. Adicione variables ​​de ambiente http_proxy e https_proxy com detalhes de proxy.

     variable name: http_proxy variable value: https://user_id:password@your_proxy:your_port/ variable name: https_proxy variable value: https:// user_id:password@your_proxy:your_port 
  2. Se você iniciar o R ​​a partir de um ícone na área de trabalho, poderá adicionar o sinalizador --internet à linha de destino (clique com o botão direito -> Propriedades)

    ex. "C:\Program Files\R\R-2.8.1\bin\Rgui.exe" --internet2

  3. Para o RStudio, basta fazer isso:

    Em primeiro lugar, abra o RStudio como sempre, selecione no menu superior:

    Pacotes de opções globais de ferramentas

    Desmarque a opção: Usar biblioteca / proxy do Internet Explorer para HTTP

  4. Encontre o arquivo ( .Renviron ) no seu computador, provavelmente você o encontrará aqui: C:\Users\your user name\Documents .

    Note que: se não existir, você pode criá-lo apenas escrevendo este comando em R:

     file.edit('~/.Renviron') 

    Em seguida, adicione essas seis linhas às iniciais do arquivo:

     options(internet.info = 0) http_proxy = https:// user_id:password@your_proxy:your_port http_proxy_user = user_id:password https_proxy = https:// user_id:password0@your_proxy:your_port https_proxy_user = user_id:password ftp_proxy = user_id:password@your_proxy:your_port 
  5. Reinicie R. Digite os seguintes comandos em R para garantir que a configuração acima funcione bem:

     Sys.getenv("http_proxy") Sys.getenv("http_proxy_user") Sys.getenv("https_proxy") Sys.getenv("https_proxy_user") Sys.getenv("ftp_proxy") 
  6. Agora você pode instalar os pacotes como quiser usando o comando como:

     install.packages("mlr",method="libcurl") 

    É importante adicionar method="libcurl" , caso contrário não funcionará.

A maneira mais simples de fazer tudo funcionar no RStudio no Windows 10 :

Abra o Internet Explorer, selecione Internet Options :

insira a descrição da imagem aqui


Abra o editor para variables ​​de ambiente:

insira a descrição da imagem aqui


Adicione uma variável HTTP_PROXY no formulário:

 HTTP_PROXY=http://username:password@localhost:port/ 

Exemplo:

 HTTP_PROXY=http://John:JohnPassword@localhost:8080/ 

insira a descrição da imagem aqui


O RStudio deve funcionar:

insira a descrição da imagem aqui

Tentei tudo isso e também as soluções usando netsh, winhttp etc. A resposta da Geek On Acid me ajudou a baixar os pacotes do servidor, mas nenhuma dessas soluções funcionou para usar o pacote que eu queria rodar (pacote twitteR).

A melhor solução é usar um software que permita configurar o proxy de todo o sistema.

FreeCap (gratuito) e Proxifier (trial) funcionou perfeitamente para mim na minha empresa.

Tenha em atenção que tem de remover as definições de proxy do seu navegador e de quaisquer outras aplicações que tenha configurado para utilizar o proxy, uma vez que estas ferramentas fornecem um proxy para todo o sistema para todo o tráfego de rede do seu computador.

Minha solução em um Windows 7 (32 bits). Versão R 3.0.2

 Sys.setenv(http_proxy="http://proxy.*_add_your_proxy_here_*:8080") setInternt2 updateR(2)