Znalazłem sposób, używając czysto Pythona, aby uzyskać współrzędne dla tweetów za pomocą filtru słów. Nie wydaje się, aby wiele osób dołączało lokalizację za pomocą swoich tweetów.
To może nie być to, czego szukasz, ponieważ są to dane przesyłane strumieniowo na żywo. Możesz to przetestować, umieszczając unikalne słowo filtrujące, a następnie tweetując je ze swojego konta na Twitterze. Zobaczysz swój tweet pojawiający się w Pythonie prawie natychmiast. Byłoby to całkiem fajne do użycia na wielkie wydarzenie.
Musisz zainstalować Tweepy .
pip install tweepy
I zdobądź klucz API Twittera .
Następnie możesz użyć tego skryptu jako szablonu:
import json
from tweepy import Stream
from tweepy import OAuthHandler
from tweepy.streaming import StreamListener
#Enter Twitter API Key information
consumer_key = ''
consumer_secret = ''
access_token = ''
access_secret = ''
file = open("C:\\Output.csv", "w")
file.write("X,Y\n")
data_list = []
count = 0
class listener(StreamListener):
def on_data(self, data):
global count
#How many tweets you want to find, could change to time based
if count <= 2000:
json_data = json.loads(data)
coords = json_data["coordinates"]
if coords is not None:
print coords["coordinates"]
lon = coords["coordinates"][0]
lat = coords["coordinates"][1]
data_list.append(json_data)
file.write(str(lon) + ",")
file.write(str(lat) + "\n")
count += 1
return True
else:
file.close()
return False
def on_error(self, status):
print status
auth = OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)
twitterStream = Stream(auth, listener())
#What you want to search for here
twitterStream.filter(track=["Halloween"])
Sprawdź również tę dokumentację z Twittera, pokazuje ona, co możesz umieścić w filtrze.
Oto wynik umieszczenia filtra przez kilka minut jako „Halloween”:
A do diabła, oto pierwsze 2000 tweetów, które wspominały Halloween!
http://i.stack.imgur.com/bwdoP.png
Wesołego Halloween!