getURL в RCurl проблема за брандмауэром R

Я нахожусь за больничными брандмауэрами, и обычно мне приходится использовать setInternet2(T) для R, чтобы правильно получить доступ к сети. Однако запуск моего кода (который отлично работает дома) приводит к

curlPerform(curl = curl, .opts = opts, .encoding = .encoding) : 
  Could not resolve host: www.cnn.com; Host not found

Можно ли вообще обойти это?

с уважением,

//M


person Misha    schedule 15.11.2010    source источник
comment
Нам нужно больше информации. Какой код выдает это сообщение? Работает ли что-нибудь через интернет с работы? Выдает ли x=getURL(h ttp://www.cnn.com/) такое же сообщение об ошибке? Это то, что вы делаете? Похоже, проблема с поиском DNS. (не уверен, как сделать URL-адреса в этом поле редактирования, поэтому удалите пробел из http выше)   -  person Spacedman    schedule 15.11.2010
comment
x=getURL(www.cnn.com) выдает приведенный выше ответ. Интернет работает нормально, когда я использую setInternet2(T), т.е. я могу использовать install.packages и т.д...   -  person Misha    schedule 15.11.2010


Ответы (1)


Похоже, что RCurl не использует те же настройки прокси, что и R (поэтому настройка internet2 не помогает), вам нужно установить их вручную, с помощью команды curlSetOpt:

curl <- getCurlHandle()

curlSetOpt(.opts = list(proxy = '<address>:<port>'), curl = curl)

ans <- getURL('http://www.cnn.com', curl = curl)

person Jean-Robert    schedule 13.12.2010
comment
Выглядит многообещающе, если бы я только мог понять, как получить доступ к настройкам прокси в R. Есть ли функция, которая извлекала бы эти настройки, которые впоследствии можно было бы передать в curlSetOpt?? - person Misha; 14.12.2010