Я нашел способ, используя чисто Python, чтобы получить координаты для твитов, используя фильтр слов. Не похоже, что многие люди включают местоположение в свои твиты.
Это может быть не то, что вам нужно, потому что это потоковая передача данных. Вы можете проверить это, вставив уникальное слово фильтра, а затем отправив его в Твиттере. Вы увидите, как ваш твит появится в Python практически мгновенно. Это было бы здорово использовать для какого-то грандиозного события.
Вам нужно будет установить Tweepy .
pip install tweepy
И получите ключ API Twitter .
Затем вы можете использовать этот скрипт в качестве шаблона:
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"])
Ознакомьтесь также с этой документацией в Твиттере, она показывает, что вы можете вставить в фильтр.
Вот результат установки фильтра как «Хэллоуин» на несколько минут:
И, черт возьми, вот первые 2000 твитов, в которых упоминается Хэллоуин!
http://i.stack.imgur.com/bwdoP.png
Счастливого Хэллоуина!