2014-11-24 11 views
11

Ich bin derzeit mit dem folgenden Code, erhält diese den Tweet und dann an eine Funktion übergibt sie die Prozesse. Dies ist jedoch nicht in Echtzeit.Wie Twitter Erwähnungen mit Tweepy streamen?

Ich habe auch in Streaming-Tweets geschaut, aber ich muss noch einen Weg finden, um Erwähnungen zu streamen. enthält @mentions

Antwort

18

können Sie die Streaming API auf Tweets filtern verwenden. Wenn Sie den Strom mit dem Track-Parameter filtern, filtern, indem Sie den Benutzernamen Sie daran interessiert sind, indem Sie den Benutzernamen in Ihrem track Parameter wie so zB:

stream.filter(track=['twitterapi']) 

Diese alle Tweets zu Ihnen zurückkehren wird die Zeichenfolge "twitterapi" in Echt enthalten -Zeit einschließlich @ Erwähnungen (zB "@twitterapi"). Sehen Sie die Twitter Streaming API track parameter für wie das funktioniert. Dann können Sie das Ergebnis JSON nur verwenden, um die Tweets zu nehmen, die tatsächlich den Benutzer @mention Sie interessiert sind das Ergebnis JSON sieht wie folgt aus:.

{"retweet_count":0,"text":"Man I like me some @twitterapi","entities":{"urls":[],"hashtags":[],"user_mentions":[{"indices":[19,30],"name":"Twitter API","id":6253282,"screen_name":"twitterapi","id_str":"6253282"}]},"retweeted":false,"in_reply_to_status_id_str":null,"place":null,"in_reply_to_user_id_str":null,"coordinates":null,"source":"web","in_reply_to_screen_name":null,"in_reply_to_user_id":null,"in_reply_to_status_id":null,"favorited":false,"contributors":null,"geo":null,"truncated":false,"created_at":"Wed Feb 29 19:42:02 +0000 2012","user":{"is_translator":false,"follow_request_sent":null,"statuses_count":142,"profile_background_color":"C0DEED","default_profile":false,"lang":"en","notifications":null,"profile_background_tile":true,"location":"","profile_sidebar_fill_color":"ffffff","followers_count":8,"profile_image_url":"http:\/\/a1.twimg.com\/profile_images\/1540298033\/phatkicks_normal.jpg","contributors_enabled":false,"profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/365782739\/doof.jpg","description":"I am just a testing account, following me probably won't gain you very much","following":null,"profile_sidebar_border_color":"C0DEED","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1540298033\/phatkicks_normal.jpg","default_profile_image":false,"show_all_inline_media":false,"verified":false,"profile_use_background_image":true,"favourites_count":1,"friends_count":5,"profile_text_color":"333333","protected":false,"profile_background_image_url":"http:\/\/a3.twimg.com\/profile_background_images\/365782739\/doof.jpg","time_zone":"Pacific Time (US & Canada)","created_at":"Fri Sep 09 16:13:20 +0000 2011","name":"fakekurrik","geo_enabled":true,"profile_link_color":"0084B4","url":"http:\/\/blog.roomanna.com","id":370773112,"id_str":"370773112","listed_count":0,"utc_offset":-28800,"screen_name":"fakekurrik"},"id":174942523154894848,"id_str":"174942523154894848"} 

, dass ein Chaos ist, aber wenn man in der "entities" aussehen Objekt, werden Sie "user_mentions" sehen:

"user_mentions":[{"indices":[19,30],"name":"Twitter API","id":6253282,"screen_name":"twitterapi","id_str":"6253282"}] 

Dann unter "screen_name" Sie "twitterapi" sehen, Sie zeigen, dass der Benutzer @twitterapi @mentioned wurde.