sampleStream {streamR} | R Documentation |
Connect to Twitter Streaming API and return a small random sample of all public statuses.
Description
sampleStream
opens a connection to Twitter's Streaming API
that will return a small random sample of public statuses, around 1%
at any given time.
Usage
sampleStream(file.name, timeout = 0, tweets = NULL, oauth = NULL,
verbose = TRUE)
Arguments
file.name |
string, name of the file where tweets will be written. "" indicates output to the console, which can be redirected to an R object. If the file already exists, tweets will be appended (not overwritten). |
timeout |
numeric, maximum length of time (in seconds) of connection to stream.
The connection will be automatically closed after this period. For example, setting
|
tweets |
numeric, maximum number of tweets to be collected when function is called.
After that number of tweets have been captured, function will stop. If set to |
oauth |
an object of class |
verbose |
logical, default is |
Details
For more information, check the documentation at: https://developer.twitter.com/en/docs/tweets/sample-realtime/overview/GET_statuse_sample
Note that when no file name is provided, tweets are written to a temporary file, which is loaded in memory as a string vector when the connection to the stream is closed.
The total number of actual tweets that are captured might be lower than the number of tweets requested because blank lines, deletion notices, and incomplete tweets are included in the count of tweets downloaded.
Author(s)
Pablo Barbera pablo.barbera@nyu.edu
See Also
filterStream
, userStream
, parseTweets
Examples
## Not run:
## capture a random sample of tweets
sampleStream( file.name="tweets_sample.json", user=FOO, password=BAR )
## An example of an authenticated request using the ROAuth package,
## where consumerkey and consumer secret are fictitious.
## You can obtain your own at dev.twitter.com
library(ROAuth)
reqURL <- "https://api.twitter.com/oauth/request_token"
accessURL <- "https://api.twitter.com/oauth/access_token"
authURL <- "https://api.twitter.com/oauth/authorize"
consumerKey <- "xxxxxyyyyyzzzzzz"
consumerSecret <- "xxxxxxyyyyyzzzzzzz111111222222"
my_oauth <- OAuthFactory$new(consumerKey=consumerKey,
consumerSecret=consumerSecret, requestURL=requestURL,
accessURL=accessURL, authURL=authURL)
my_oauth$handshake(cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl"))
## Alternatively, it is also possible to create a token without the handshake:
my_oauth <- list(consumer_key = "CONSUMER_KEY",
consumer_secret = "CONSUMER_SECRET",
access_token="ACCESS_TOKEN",
access_token_secret = "ACCESS_TOKEN_SECRET")
sampleStream( file.name="tweets_sample.json", oauth=my_oauth )
## End(Not run)