Erhalten Sie mithilfe der Streaming-API von Twitter beliebige Schlüsselwörter. Wenn es sich um home_timeline handelt, können nur die Personen, die ihm folgen, keine Daten erfassen, es sei denn, Streaming wird verwendet. Es wurde viel darüber gesprochen, aber jetzt habe ich die Streaming-API berührt.
stream.py
#!/user/bin/env python
# -*- coding: utf-8 -*-
from requests_oauthlib import OAuth1Session
import json
import requests
import time, calendar
import sys, codecs
word = raw_input(u"input: ")
C_KEY = "*************************************"
C_SECRET = "*************************************"
A_TOKEN = "*************************************"
T_SECRET = "*************************************"
URL = "https://stream.twitter.com/1.1/statuses/filter.json"
def Client_key():
return OAuth1Session(C_KEY,
client_secret = C_SECRET,
resource_owner_key = A_TOKEN,
resource_owner_secret = T_SECRET
)
def Response(client, **filter_data):
return client.post(
URL,
data = filter_data,
stream = True
)
def YmdHMS(created_at):
time_utc = time.strptime(created_at, '%a %b %d %H:%M:%S +0000 %Y')
unix_time = calendar.timegm(time_utc)
time_local = time.localtime(unix_time)
return int(time.strftime("%Y%m%d%H%M%S", time_local))
def Print_l(r):
for line in r.iter_lines():
tweet = json.loads(line)
Created_at = YmdHMS(tweet["created_at"])
User = (tweet["user"]["screen_name"].encode("utf-8"))
Name = (tweet["user"]["name"].encode("utf-8"))
Text = (tweet["text"].encode("utf-8"))
try:
if tweet["user"]["lang"] == "ja":
print "ID: ", User
print "Nutzername: ", Name
print "Text: ", Text
print Created_at
print "==" * 40
except:
pass
if __name__ == "__main__":
client = Client_key()
r = Response(client, track=word)
Print_l(r)
Da Sie Echtzeit-Dinge erhalten, können Sie kein seltsames Schlüsselwort finden und es gibt kein json-Objekt! Ich werde böse. Es ist besser, einseitig # Hash-Tags zu erhalten.
Die Änderung von created_at in Japan Zeit http://blog.unfindable.net/archives/4302 Ich habe die obige URL verwendet.
Beenden Sie das Skript mit Strg + C.
Recommended Posts