当我连接到我的VPN时,我正在尝试使用TwitteR API下载一些推文,但问题是我在握手时一直无法连接到主机错误。
我尝试了几件事:
但似乎没有任何效果,你知道我能做些什么才能让它发挥作用吗?
感谢Advance.Code:
#Use below libraries:
require(twitteR) #twitteR Lib
require(httr) #httr Lib
require(ROAuth)
#Not Working
#Set Proxy so we can crawl twitter while connected to VPN
#Sys.setenv(http_proxy="XXXXXXXXXXXXXXX")
#options(shinyapps.http = "internal")
#$options(RCurlOptions = list(proxy = "XXXXXXXXXXXXXXXXX")
#h <- getCurlHandle(
#proxy = "XXXXXX",
#proxyport = XXX, cainfo = "cacert.pem")
l_consKey <- "XXXXXXXXXXXXXXX";
l_consSecret <- "XXXXXXXXXXXXXXX";
l_reqURL <- "https://api.twitter.com/oauth/request_token"
l_accessURL <- "https://api.twitter.com/oauth/access_token"
l_authURL <- "https://api.twitter.com/oauth/authorize"
#Download cacert.pm file
download.file( url = "http://curl.haxx.se/ca/cacert.pem", destfile = "cacert.pem");
#Manage OAuth Authentication
twitCredentials <- OAuthFactory$new( consumerKey = l_consKey
, consumerSecret = l_consSecret
, requestURL = l_reqURL
, accessURL = l_accessURL
, authURL = l_authURL
)
#Handshake
twitCredentials$handshake(cainfo="cacert.pem")
答案 0 :(得分:1)
感谢您的回复。我已经拥有了github的库和代理选项集。我缺少的是我的脚本中的setconfig选项:
谢谢a'lot!
脚本:
###########################################################
#
# Libraries
#
###########################################################
library(twitteR); # Twitter API
library(httr); # httr library to set proxy options
###########################################################
#
# Variables
#
###########################################################
#Twitter API
l_consKey <- yourConsumerKeyHere;
l_consSecret <- yourConsumerSecret;
l_token <- yourConsumerAccessToken;
l_tokenSecret <- yourConsumerAccessTokenSecret;
#httr
l_proxyUrl <- yourProxyUrl
l_proxyPort <- yourProxyPortNumber
###########################################################
#
# Body
#
###########################################################
# Set proxy options
set_config( use_proxy( url = l_proxyUrl
, port = l_proxyPort
)
);
#OAuth authentication
setup_twitter_oauth( consumer_key = l_consKey
, consumer_secret = l_consSecret
, access_token = l_token
, access_secret = l_tokenSecret
);