Ajuste Proxy para R

Estoy enfrentando un problema mientras conecto R con internet en mi oficina. Puede ser esto debido a la configuración de LAN. Intenté casi todas las formas posibles que encontré en la web (ver más abajo), pero aún así fue en vano.

  • Método1: Invocar R utilizando --internet2

  • Método2: Invocar R mediante la configuración ~/Rgui.exe http_proxy=http:/999.99.99.99:8080/ http_proxy_user=ask

  • Método3: Establecer Setinternet2=TRUE

  • Método4:

     curl <- getCurlHandle() curlSetOpt(.opts = list(proxy = '999.99.99.99:8080'), curl = curl) Res <- getURL('http://www.cricinfo.com', curl = curl) 

En todos los métodos anteriores, puedo cargar paquetes directamente desde CRAN y también puedo descargar archivos usando el comando download.file

Pero al usar los getURL(RCurl) , readHTMLTable(XML) y htmlTreeParse(XML) no puedo extraer datos web. Estoy obteniendo ~\nAccess Denied\n~ error.

¿Cómo establecer la configuración del proxy LAN para el paquete XML en R?

En Mac OS, encontré la mejor solución aquí . Citando al autor, dos simples pasos son:

1) Abra la Terminal y haga lo siguiente:

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

2) Ejecuta R y haz lo siguiente:

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

comprueba esto con:

 Sys.getenv("http_proxy") 

Estoy detrás del proxy de la universidad, y esta solución funcionó a la perfección. El principal problema es exportar los elementos en Terminal antes de ejecutar R, tanto en mayúsculas como minúsculas.

El problema es con las opciones de curl: el paquete RCurl no parece usar internet2.dll . Debe especificar el puerto por separado, y probablemente necesite dar a su usuario los datos de inicio de sesión como credenciales de red, por ejemplo,

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

Recuerde escapar de cualquier barra invertida en su contraseña. Es posible que también deba envolver la URL en una llamada a curlEscape .

Para RStudio solo tienes que hacer esto:

En primer lugar, abra RStudio como siempre, seleccione desde el menú superior:

HerramientasOpciones globalesPaquetes

Desmarque la opción: Usar biblioteca / proxy de Internet Explorer para HTTP

Y luego cierra el Rstudio, además tienes que:

  1. Encuentre el archivo (.Renviron) en su computadora, lo más probable es que lo encuentre aquí: C: \ Users \ su nombre de usuario \ Documents. Tenga en cuenta que si no existe puede crearlo simplemente escribiendo este comando en RStudio:

     file.edit('~/.Renviron') 
  2. Agregue estas dos líneas a las iniciales del archivo:

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

Y eso es..??!!!

Tuve el mismo problema en mi oficina y lo resolví agregando el proxy en el destino del atajo R; Haga clic en el botón derecho del icono R, preferencias y en el campo de destino agregar

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

Asegúrese de colocar el directorio donde tiene instalado el progtwig R. Funciona para mi. Espero que esto ayude.

En Windows 7 resolví esto yendo a la configuración de mi entorno ( prueba este enlace para ver cómo ) y agregando las variables de usuario http_proxy y https_proxy con los detalles de mi proxy.

Esta publicación se refiere a problemas de proxy R en * nix. Debe saber que R tiene muchas bibliotecas / métodos para buscar datos a través de Internet.

Para ‘curl’, ‘libcurl’, ‘wget’, etc., solo haga lo siguiente:

  1. Abra una terminal. Escriba el siguiente comando:

     sudo gedit /etc/R/Renviron.site 
  2. Ingrese las siguientes líneas:

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

    Reemplace username , password , abc.com , xyz.com y port con estas configuraciones específicas para su red.

  3. Salga de R y vuelva a iniciar.

Esto debería resolver su problema con el método ‘libcurl’ y ‘curl’. Sin embargo, no lo he probado con ‘httr’. Una forma de hacerlo con ‘httr’ solo para esa sesión es la siguiente:

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

Debe sustituir las configuraciones específicas de su n / w en campos relevantes.

Si inicia R desde un icono de escritorio, puede agregar el --internet a la línea de destino (haga clic con el botón derecho -> Propiedades), por ej.

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

Inspirado por todas las respuestas relacionadas en Internet, finalmente encontré la solución para configurar correctamente el Proxy para R y Rstudio.

Hay varios pasos a seguir, tal vez algunos de los pasos sean inútiles, ¡pero la combinación funciona!

  1. Agregue las variables de entorno http_proxy y https_proxy con los detalles del 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. Si inicia R desde un icono de escritorio, puede agregar el --internet a la línea de destino (clic con el botón derecho -> Propiedades)

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

  3. Para RStudio solo tienes que hacer esto:

    En primer lugar, abra RStudio como siempre, seleccione desde el menú superior:

    Herramientas-Opciones globales-Paquetes

    Desmarque la opción: Usar biblioteca / proxy de Internet Explorer para HTTP

  4. Encuentre el archivo ( .Renviron ) en su computadora, lo más probable es que lo encuentre aquí: C:\Users\your user name\Documents .

    Tenga en cuenta que: si no existe, puede crearlo simplemente escribiendo este comando en R:

     file.edit('~/.Renviron') 

    A continuación, agregue estas seis líneas a las iniciales del archivo:

     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. Escriba los siguientes comandos en R para asegurarse de que la configuración anterior funcione bien:

     Sys.getenv("http_proxy") Sys.getenv("http_proxy_user") Sys.getenv("https_proxy") Sys.getenv("https_proxy_user") Sys.getenv("ftp_proxy") 
  6. Ahora puedes instalar los paquetes como quieras usando el comando como:

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

    Es importante agregar method="libcurl" , de lo contrario no funcionará.

La forma más simple de hacer que todo funcione en RStudio en Windows 10 :

Abra Internet Explorer, seleccione Internet Options :

enter image description here


Editor abierto para variables de entorno:

enter image description here


Agregue una variable HTTP_PROXY en forma:

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

Ejemplo:

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

enter image description here


RStudio debería funcionar:

enter image description here

Intenté todas estas y también las soluciones usando netsh, winhttp, etc. La respuesta de Geek On Acid me ayudó a descargar paquetes del servidor, pero ninguna de estas soluciones funcionó para usar el paquete que quería ejecutar (paquete twitteR).

La mejor solución es usar un software que le permita configurar el proxy de todo el sistema.

FreeCap (gratis) y Proxifier (prueba) funcionó perfectamente para mí en mi empresa.

Tenga en cuenta que debe eliminar la configuración del proxy de su navegador y de cualquier otra aplicación que haya configurado para usar el proxy, ya que estas herramientas proporcionan un proxy de todo el sistema para todo el tráfico de red desde su computadora.

Mi solución en un Windows 7 (32 bits). R versión 3.0.2

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