Use twitter from R. Get started by reading vignette("rtweet")
.
To get the current released version from CRAN:
install.packages("rtweet")
All users must be authenticated to interact with Twitterâs APIs. The
easiest way to authenticate is to use your personal twitter account -
this will happen automatically (via a browser popup) the first time you
use an rtweet function. See auth_setup_default()
for details. Using
your personal account is fine for casual use, but if you are trying to
collect a lot of data itâs a good idea to authentication with your own
Twitter âappâ. See vignette("auth", package = "rtweet")
for details.
library(rtweet)
{{rtweet}} should be used in strict accordance with Twitterâs developer terms.
Search for up to 10,000 tweets containing #rstats, excluding retweets:
rt <- search_tweets("#rstats", n = 10000, include_rts = FALSE)
Twitter rate limits cap the number of search results returned to 18,000
every 15 minutes. To request more than that, set
retryonratelimit = TRUE
and rtweet will wait for rate limit resets for
you.
Search for 1,000 users with the #rstats in their profile:
usrs <- search_users("#rstats", n = 1000)
Randomly sample (approximately 1%) from the live stream of all tweets:
rt <- stream_tweets("")
Stream all geo-located tweets from London for 60 seconds:
rt <- stream_tweets(lookup_coords("london, uk"), timeout = 60)
Get all accounts followed by a user:
## get user IDs of accounts followed by CNN
cnn_fds <- get_friends("cnn")
## lookup data on those accounts
cnn_fds_data <- lookup_users(cnn_fds$user_id)
Get all accounts following a user:
## get user IDs of accounts following CNN
cnn_flw <- get_followers("cnn", n = 10000)
cnn_flw_data <- lookup_users(cnn_flw$user_id)
If you want all followers, youâll need youâll need to set n = Inf
and retryonratelimit = TRUE
but be warned that this might take a
long time.
Get the most recent 3,200 tweets from CNN, BBC World, and Fox News:
## get user IDs of accounts followed by CNN
tmls <- get_timelines(c("cnn", "BBCWorld", "foxnews"), n = 3200)
Get the 3,000 most recently favorited statuses by Justin Bieber:
jkr <- get_favorites("justinbieber", n = 3000)
Communicating with Twitterâs APIs relies on an internet connection, which can sometimes be inconsistent. With that said, if you encounter an obvious bug for which there is not already an active issue, please create a new issue with all code used (preferably a reproducible example) on Github.
Please note that this package is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.