2017-04-17 6 views

Antwort

0

Um Timeline Tweets mit Spark Streaming und Scala nach Hause zu bekommen, müssen wir die Twitter OAuth-Anmeldeinformationen unter TwitterFactory in twitter4j festlegen.

import twitter4j.TwitterFactory 
import twitter4j.auth.AccessToken 

// Twitter Authentication credentials 
    val consumerKey = "twitter_consumer_key" 
    val consumerSecret = "twitter_consumer_secret" 
    val accessToken = "twitter_access_token" 
    val accessTokenSecret = "twitter_access_token_secret" 

    // Authorizing with your Twitter Application credentials 
    val twitter = new TwitterFactory().getInstance() 
    twitter.setOAuthConsumer(consumerKey, consumerSecret) 
    twitter.setOAuthAccessToken(new AccessToken(accessToken, accessTokenSecret)) 

    // Setting up streaming context with a window of 10 seconds 
    val ssc = new StreamingContext(sc, Seconds(1)) 
    val output = TwitterUtils.createStream(ssc, Option(twitter.getAuthorization())) 

Oder wenn Sie nicht über die Zugangsdaten in ssc festlegen möchten, dann können Sie folgenden Code verwenden:

System.setProperty("twitter4j.oauth.consumerKey", "twitter_consumer_key") 
System.setProperty("twitter4j.oauth.consumerSecret", "twitter_consumer_secret") 
System.setProperty("twitter4j.oauth.accessToken", "twitter_access_token") 
System.setProperty("twitter4j.oauth.accessTokenSecret", "twitter_access_token_secret") 


val ssc = new StreamingContext(sc, Seconds(1)) 
val output = TwitterUtils.createStream(ssc, None) 

Für ein vollwertiges Beispiel auf Spark-Streaming und Scala, beziehen sich folgendes Beispiel: knolx-spark-streaming

+0

ich habe gleich und ich legen sie die Zugangsdaten in ssc, aber es erhält einen globalen Strom von Tweets und nicht von der Timeline. –

Verwandte Themen