2014-09-15 3 views
8

Я следую последнему обновлению на twitteR homepage, и я не могу пройти процесс авторизации.Ошибка авторизации пакета R TwitteR

library(devtools) 
install_github("twitteR", username="geoffjentry") 

library(twitteR) 
api_key <- "XXXXXXXXXXXXXXXXX" 
api_secret <- "XXXXXXXXXXXXXXXXX" 
access_token <- "XXXXXXXXXXXXXXXXX" 
access_secret <- "XXXXXXXXXXXXXXXXX" 
setup_twitter_oauth(api_key, api_secret, access_token, access_secret) 

Это выход я получаю обратно:

[1] "Using direct authentication" 
Error in check_twitter_oauth() : OAuth authentication error: 
This most likely means that you have incorrectly called setup_twitter_oauth()' 

Я также попытался setup_twitter_oauth(api_key, api_secret), и это сообщение об ошибке:

[1] "Using browser based authentication" 
Error in init_oauth1.0(endpoint, app, permission = params$permission) : 
client error: (401) Unauthorized 

Я не думаю, что есть любые другие варианты в setup_twitter_oauth. Кто-нибудь еще сталкивается с этой ошибкой?

+0

Вы приобрели свой собственный ключ api и токен доступа, верно? Вы не просто используете «X» на практике? Это будет очень сложно отлаживать без воспроизводимой ошибки. – MrFlick

+0

@MrFlick Да, у меня есть свой собственный ключ api и токен доступа. Я просто использую «X» в качестве заполнителя. Есть ли способ отследить ошибку? – Boxuan

+1

Этот вопрос кажется специфичным для пакета. Я рекомендую обратиться за помощью в список рассылки [twitteR] (http://lists.hexdump.org/listinfo.cgi/twitter-users-hexdump.org), или если вы считаете, что ошибка воспроизводима, создайте [twitteR github выпуск] (https://github.com/geoffjentry/twitteR/issues). Убедитесь, что вы используете текущую версию 'httr'. – MrFlick

ответ

15

набор обратного вызова URL для http://127.0.0.1:1410 в настройках приложения в твиттере

+0

Если вы предлагаете на основе [этой проблемы] (https://github.com/hadley/httr/issues/156), это поможет включить это как контекст. – jbaums

0

Я столкнулся с той же проблемой и пытался все последние загрузки и библиотеки HTTR, но до сих пор проблема была там. Затем я создал новый APP в twitter и использовал ключи API и другие учетные данные в коде, и теперь проблема решена. Я использовал APP, который я создал 8 месяцев назад .... регенерация учетных данных API также может быть решена для существующего APP.

5

Эта ошибка возникает, когда вашему приложению отсутствует URL-адрес обратного вызова. Чтобы решить эту проблему, перейдите на страницу https://apps.twitter.com/, выберите свою заявку, а затем перейдите к НАСТРОЙКИ прокрутите вниз до CALLBACK URL и введите (http://127.0.0.1:1410). Это должно позволить вам выполнять проверку браузера.

enter image description here

Или вы можете ввести access_token и access_secret в R, чтобы вызвать локальную проверку.

consumer_key <- " YOUR CONSUMER KEY " 
consumer_secret<- " YOUR CONSUMER SECRET " 
access_token <- " YOUR ACCESS TOKEN " 
access_secret <- " YOUR ACCESS SECRET " 
setup_twitter_oauth(consumer_key, consumer_secret, access_token, access_secret) 
5

Я попытался установить обратный вызов URL в (http://127.0.0.1:1410), обновить все пакеты, связанные с этим пакетом. Ничто не решило мою проблему. затем я установил httk httpuv пакетов и сделал строки ниже:

consumer_key <- " YOUR CONSUMER KEY "

consumer_secret<- " YOUR CONSUMER SECRET"

setup_twitter_oauth(consumer_key, consumer_secret, access_token=NULL, access_secret=NULL)

Он работал, как красота.

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

+2

Большое спасибо, это действительно помогло! –

0

Попробуйте использовать этот

setup_twitter_oauth (apiKey, apiSecret, access_token = маркер доступа, access_secret = accessSecret)

0

Я получил это фиксируется генерирующего вручную маркер доступа на apps.twitter.com сайте и передать в качестве аргумента к api, который заставит использовать локальную аутентификацию, а не аутентификацию браузера.

3

попытка install.packages('base64enc'). это сработало для меня. нашел его в обсуждении github.

1

У меня была та же проблема. Пробовал все предложения, которые я нашел в сети, но напрасно.

Возможно, это связано с URL-адресом обратного вызова, я пропустил его раньше.

Создано новое приложение, на этот раз оно включено - http://127.0.0.1:1410, и это сработало для меня.

Вот код, который я использовал:

library(httr) 
library(devtools) 
library(twitteR) 
library(base64enc) 

consumer_key <- 'XXXXXXXXXXXX' 
consumer_secret <- 'XXXXXXXXXXXX' 
access_token <- 'XXXXXXXXXXXX' 
access_secret <- 'XXXXXXXXXXXX' 
setup_twitter_oauth(consumer_key , consumer_secret, access_token, access_secret) 

tw <- searchTwitter("LFC",n=100,lang="en") 

Надеется, что это помогает.

0

Я столкнулся с теми же ошибками: «Ошибка в check_twitter_oauth(): OAuth Ошибка аутентификации: Это скорее всего означает, что вы неправильно называете setup_twitter_oauth()» и после попытки различных решений, размещенных здесь, в StackOverflow, Я все еще не понял проблему. Я регенерировать свой потребительский ключ и секретный и снабдив его на следующие строки в моем R сценария:

consumer_key <- 'XXconsumer_keyXX' 
consumer_secret <- 'XXconsumer_secretXX' 
access_token <- 'XXaccess_tokenXX' 
access_secret <- 'XXaccess_secretXX' 
setup_twitter_oauth(consumer_key , consumer_secret, access_token, access_secret) 

Что я сделал, чтобы получить это право и получить рукопожатие аутентификации OAuth является обеспечение щебет поставляется потребительский ключ, секрет потребителя, маркер доступа, доступ к секретному значению непосредственно на 5-й линию выше, то есть,

setup_twitter_oauth("xxconsumer_key_xx", "xxconsumer_secretxx", "xxaccess_tokenxx", "xxaccess_secretxx") 

Это работает для меня, и надеюсь, что это будет для вас.

0

У меня также была эта проблема, и я прошел через все опубликованные здесь безрезультатно. Наконец я посмотрел на брандмауэр Windows и понял, что я не сделал исключение для Rstudio. Все работает сейчас!

Смежные вопросы