4

rtweet をインストールしましたが、アメリカ以外の特定の国からツイートを収集したい場合、パッケージはデータを収集しません。R の環境変数として、Google からの同じ API キーを使用して、 Geocoding APIMaps JavaScript API、およびGeolocation APIを既にインストールしています。以下は、私が従った手順です。

Google maps_token を生成する

google_maps_token<-"my key XXXXXXXXXX"

ホームディレクトリのパス

home_directory <- path.expand("~/")

トークンの名前と組み合わせる

file_name <- file.path(home_directory, "google_maps_token.rds")

トークンをホーム ディレクトリに保存する

saveRDS(google_maps_token, file = file_name)

環境変数を作成する

cat(paste0("GOOGLE_MAPS_PAT=", file_name),
file = file.path(home_directory, ".Renviron"),
append = TRUE)

API キーの環境変数を視覚化する

usethis::edit_r_environ() 

TWITTER_PAT=/Users/xxxxxx/.rtweet_token1.rds GOOGLE_MAPS_PAT=/Users/xxxxxx//google_maps_token.rds

Google API キーを保存した後、RStudio を再起動してツイートの収集を開始すると、次のようになります。

rtweet ライブラリを読み込む

library(rtweet)

アメリカからツイートを集める

tweets_USA <- search_tweets("#lang:en",
                        geocode = lookup_coords("USA",apikey = "google_maps_token"),
                n=10, include_rts = FALSE)

ツイートを検索しています... ツイートの収集が完了しました。

アメリカからの 10 件のツイート

メキシコからツイートを集める

tweets_Mexico <- search_tweets("#lang:es",
                           geocode = lookup_coords("mexico",apikey = "google_maps_token"),
                n=10, include_rts = FALSE)

ツイートを検索しています... ツイートの収集が完了しました。

メキシコからはデータが収集されていません

また、「usa」を使用してrtweetパッケージのlookup_coords()関数を使用すると機能します

アメリカから座標を取得する

usa <- lookup_coords("usa")

アメリカからのコーディネート

しかし、ヘルプセクションの例に従って別のアドレスを使用しようとすると、データが収集されません

ブラジルから座標を取得する

bz <- lookup_coords("brazil")

ブラジルからの座標はありません

しかし、関数に API キーを直接記述すると機能します。セキュリティ上の理由から、代わりに「XXXXXXXXXX」と書きます

mexico_coord <- lookup_coords(address = "mexico",
                          components = "country:Mexico",
                          apikey = "XXXXXXXXXXXX") 

メキシコ座標

何か間違ったことをしていますか、それとも API キーを別のディレクトリにインストールする必要がありますか? 私の作業ディレクトリ (プロジェクトとスクリプトを保存する場所) は、path.expand("~/") を実行した結果として表示されるホーム ディレクトリとは異なると言わざるを得ません。

4

1 に答える 1