Как отфильтровать твиты по определенному местоположению, используя библиотеку твипи - PullRequest
0 голосов
/ 12 марта 2020

У меня есть пример кода, в котором я пытаюсь транслировать твиты на основе хэштега covid_19. Я хочу ограничить твиты только из определенного города или страны. Например, Калифорния.

Вот мой код. Я пытаюсь распечатать геолокацию, но последняя строка в коде фактически не печатает изучаемое местоположение.

from tweepy.streaming import StreamListener
from tweepy import OAuthHandler
from tweepy import Stream
import tweepy as tw
#override tweepy.StreamListener to add logic to on_status
class MyStreamListener(tweepy.StreamListener):

    def on_status(self, status):
        if status.user.location is None:
            pass
        else:
            print(status.user.location)
consumer_key = ''
consumer_secret = ''
access_token = ''
access_token_secret = ''

auth = tw.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tw.API(auth, wait_on_rate_limit=True)
myStreamListener = MyStreamListener()
myStream = tw.Stream(auth = api.auth, listener=myStreamListener)

region = [-122.481234, 37.714105 ,-122.409798,37.802951 ]

myStream.filter(track=["Covid_19"], locations= region)

Последняя строка в коде печатает местоположения образца как

Türkiye
The Netherlands.
United States
Türkiye
Paris, France
España
Florida, USA
El infierno

I пользуюсь твипом 3.8

...