Настройка прокси для R

Я столкнулся с проблемой при подключении R с интернетом в моем офисе. Возможно, это связано с настройками локальной сети. Я пробовал практически все возможные способы, с которыми я сталкиваюсь в Интернете (см. Ниже), но все же напрасно.

В выше всех методах я могу загружать пакеты непосредственно из CRAN, а также загружать файлы с помощью команды download.file

Но используя команды getURL(RCurl) , readHTMLTable(XML) , htmlTreeParse(XML) я не могу извлечь веб-данные. Я получаю сообщение ~\nAccess Denied\n~ .

Как установить параметры прокси-сервера LAN для пакета XML в R?

В Mac OS я нашел лучшее решение здесь . Цитируя автора, два простых шага:

1) Откройте терминал и выполните следующие действия:

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

2) Запустите R и выполните следующие действия:

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

дважды проверьте это с помощью:

 Sys.getenv("http_proxy") 

Я за университетский прокси, и это решение отлично работало. Основная проблема заключается в экспорте элементов в терминале перед запуском R, как в верхнем, так и в нижнем регистре.

Проблема заключается в ваших вариантах завивки – пакет RCurl , похоже, не использует internet2.dll . Вы должны указать порт отдельно, и, вероятно, вам нужно будет указать данные своего пользователя в качестве сетевых учетных данных, например,

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

Не забудьте избежать любых обратных косых черт в вашем пароле. Возможно, вам также понадобится обернуть URL-адрес в вызове curlEscape .

Для RStudio просто вы должны это сделать:

Во-первых, откройте RStudio, как всегда, выберите из верхнего меню:

ИнструментыГлобальные параметрыПакеты

Снимите флажок: используйте библиотеку / прокси Internet Explorer для HTTP

А затем закройте Rstudio, кроме того, вам необходимо:

  1. Найдите файл (.Renviron) на своем компьютере, скорее всего, вы найдете его здесь: C: \ Users \ ваше имя пользователя \ Documents. Обратите внимание: если он не существует, вы можете создать его, просто написав эту команду в RStudio:

     file.edit('~/.Renviron') 
  2. Добавьте эти две строки к инициалам файла:

     options(internet.info = 0) http_proxy="http://user_id:[email protected]_proxy:your_port" 

Вот и все..??!!!

У меня была такая же проблема в моем офисе, и я решил, что добавление прокси-сервера в место назначения R-ярлыка; clik на правой кнопке значка R, предпочтениях и в поле назначения добавьте

 "C:\Program Files\R\your_R_version\bin\Rgui.exe" http_proxy=http://user_id:[email protected]_proxy:your_port/ 

Обязательно поместите каталог, в котором установлена ​​программа R. Это подходит для меня. Надеюсь, эта помощь.

В Windows 7 я решил это, перейдя в настройки моей среды ( попробуйте эту ссылку ) и добавьте переменные пользователя http_proxy и https_proxy с моими данными прокси.

Это сообщение относится к вопросам прокси-сервера R на * nix. Вы должны знать, что R имеет множество библиотек / методов для получения данных через Интернет.

Для «curl», «libcurl», «wget» и т. Д. Просто выполните следующие действия:

  1. Откройте терминал. Введите следующую команду:

     sudo gedit /etc/R/Renviron.site 
  2. Введите следующие строки:

     http_proxy='http://username:[email protected]:port/' https_proxy='https://username:[email protected]:port/' 

    Замените username , password , abc.com , xyz.com и port с этими настройками, характерными для вашей сети.

  3. Выйдите из R и снова запустите.

Это должно решить вашу проблему с помощью метода libcurl и curl. Однако я не пробовал его с помощью «httr». Один из способов сделать это с помощью «httr» только для этого сеанса:

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

Вам необходимо подставить настройки, специфичные для вашего н / д, в соответствующих полях.

Если вы запустите R с значка на рабочем столе, вы можете добавить флаг --internet в целевую строку (щелкните правой кнопкой мыши -> Свойства), например

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

Вдохновленный всеми ответами, связанными с Интернетом, я наконец нашел решение правильно настроить прокси для R и Rstudio.

Есть несколько шагов, чтобы следовать, возможно, некоторые из шагов бесполезны, но комбинация работает!

  1. Добавьте переменные среды http_proxy и https_proxy с данными прокси.

     variable name: http_proxy variable value: https://user_id:[email protected]_proxy:your_port/ variable name: https_proxy variable value: https:// user_id:[email protected]_proxy:your_port 
  2. Если вы запустите R с значка на рабочем столе, вы можете добавить флаг --internet в целевую строку (щелкните правой кнопкой мыши -> Свойства)

    например "C:\Program Files\R\R-2.8.1\bin\Rgui.exe" --internet2

  3. Для RStudio просто вы должны это сделать:

    Во-первых, откройте RStudio, как всегда, выберите из верхнего меню:

    Инструменты-Глобальные варианты-пакеты

    Снимите флажок: используйте библиотеку / прокси Internet Explorer для HTTP

  4. Найдите файл ( .Renviron ) на своем компьютере, скорее всего, вы найдете его здесь: C:\Users\your user name\Documents .

    Обратите внимание: если он не существует, вы можете создать его, просто написав эту команду в R:

     file.edit('~/.Renviron') 

    Затем добавьте эти шесть строк к инициалам файла:

     options(internet.info = 0) http_proxy = https:// user_id:[email protected]_proxy:your_port http_proxy_user = user_id:password https_proxy = https:// user_id:[email protected]_proxy:your_port https_proxy_user = user_id:password ftp_proxy = user_id:[email protected]_proxy:your_port 
  5. Restart R. Введите следующие команды в R, чтобы убедиться, что приведенная выше конфигурация работает хорошо:

     Sys.getenv("http_proxy") Sys.getenv("http_proxy_user") Sys.getenv("https_proxy") Sys.getenv("https_proxy_user") Sys.getenv("ftp_proxy") 
  6. Теперь вы можете установить пакеты по своему усмотрению, используя команду:

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

    Важно добавить method="libcurl" , иначе это не сработает.

Самый простой способ получить все, что работает в RStudio под Windows 10 :

Откройте Internet Explorer, выберите « Internet Options :

введите описание изображения здесь


Открыть редактор для переменных среды:

введите описание изображения здесь


Добавьте переменную HTTP_PROXY в форму:

 HTTP_PROXY=http://username:[email protected]:port/ 

Пример:

 HTTP_PROXY=http://John:[email protected]:8080/ 

введите описание изображения здесь


RStudio должен работать:

введите описание изображения здесь

Пробовал все это, а также решения, использующие netsh, winhttp и т. Д. Geek On Acid помог мне загрузить пакеты с сервера, но ни один из этих решений не работал для использования пакета, который я хотел запустить (пакет twitteR).

Лучшее решение – использовать программное обеспечение, которое позволяет вам настроить прокси-сервер всей системы.

FreeCap (бесплатно) и Proxifier (trial) отлично работали для меня в моей компании.

Обратите внимание, что вам необходимо удалить настройки прокси-сервера из своего браузера и любых других приложений, которые вы настроили для использования прокси-сервера, поскольку эти средства предоставляют прокси-сервер всей системы для всего сетевого трафика с вашего компьютера.

Мое решение на Windows 7 (32 бит). R версии 3.0.2

 Sys.setenv(http_proxy="http://proxy.*_add_your_proxy_here_*:8080") setInternt2 updateR(2) 
  • Преобразование серийного номера excel DateTime в R DateTime
  • Что делает функция invisible ()?
  • нумерация по группам
  • R: неверная многобайтовая строка
  • R: t-тест по всем столбцам
  • Получить «встроенные nul (s), найденные во вводе» при чтении csv, используя read.csv ()
  • Как выбрать строку с максимальным значением в каждой группе
  • Добавить столбец «ранг» в кадр данных
  • Возьмите сумму переменной, если комбинация значений в двух других столбцах уникальна
  • Условно удалить строки Dataframe с R
  • Последовательные / подвижные суммы в векторе в R
  • Давайте будем гением компьютера.