2015-05-24 3 views
1

Я пытаюсь загрузить данные из Google Trends в R. Подход here работает, но только пару раз, прежде чем я удалю ограничение квоты (и я даже не запускал пакетное задание).Эмуляция браузера для доступа к данным Google Trends

В то же время я могу получать данные из Google Trends в браузере. Отсюда мой интерес: есть ли способ, чтобы R эмулировал браузер, чтобы я мог получить доступ к данным в R, как в браузере (Chrome, если это имеет значение)?

+0

'RCurl'? 'Httr'? 'Rselenium'? 'GTrendsR'? Я бы попробовал некоторые из этих пакетов и вернулся с результатами. :-) – lukeA

+0

Ссылка в моем сообщении использует 'Rcurl', и, как я уже говорил, это работает пару раз (я считаю, что это было 3 раза), а затем ударил ограничение квоты. Я пробовал код для тиражирования «GTrendsR» от https://trinkerrstuff.wordpress.com/2014/11/24/gtrendsr-package-to-explore-google-trending-for-field-dependent-terms/, не сделал работайте, говоря «Нет данных о тенденциях для » для всех условий, предположительно также заблокированных из-за квоты. Я не знаком с Селеном, и это кажется излишним, чтобы забрать его для этого, так как я вряд ли буду использовать его дальше. Я могу использовать несколько советов о том, как это сделать с помощью 'httr' – Ricky

ответ

3

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

URL_GT=function(keyword="", country=NA, region=NA, year=NA, month=1, length=3){ 
# keyword can contain up to five words 
# country is the 2 letter country code 
# region is also a 2 letter code 
# year: if you want a specific year, put it here 
# month: starting month if you have specified the year 
# length: the number of months you want if you have specified the year 

    start="http://www.google.com/trends/trendsReport?hl=en-US&q=" 
    end="&cmpt=q&content=1&export=1" 
    geo="" 
    date="" 

#Geographic restrictions 
    if(!is.na(country)) { 
    geo="&geo=" 
    geo=paste(geo, country, sep="") 
    if(!is.na(region)) geo=paste(geo, "-", region, sep="") 
    } 

    queries=keyword[1] 
    if(length(keyword)>1) { 
    for(i in 2:length(keyword)){ 
    queries=paste(queries, "%2C ", keyword[i], sep="") 
    } 
    } 

#Dates 
    if(!is.na(year)){ 
    date="&date=" 
    date=paste(date, month, "%2F", year, "%20", length, "m", sep="") 
    } 

    URL=paste(start, queries, geo, date, end, sep="") 
    URL <- gsub(" ", "%20", URL) 
    return(URL) 
} 

url <- URL_GT('stackoverflow') 
browseURL(url) 

Если вы хотите скачать много файлов, посмотрите на these helper functions.

+0

Спасибо! Да, мне удалось заставить его работать раньше, используя 'browseURL()'. Вспомогательные функции выглядели хорошо, я буду использовать их в следующий раз, когда мне нужно снова нанести рейд GoogleTrends! – Ricky

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