首页 > 解决方案 > 使用 python 应用过滤器从特定国家/地区提取有关某些主题标签的推文

问题描述

我正在使用以下 python 脚本获取关于#lockdownindia、#lockdownextension 和#covid19 的推文,以获取来自我的国家(印度)的推文并执行情绪分析。我已经使用了 tweepy 库中的 cursor() 来执行此操作。当我使用#geocode:它时,它可以帮助我,但由于半径不准确,我也收到了来自巴基斯坦等邻国的推​​文,这是我不想要的。在阅读Twitter 文档时,我了解到place_country:但它不起作用。它正在返回空数据框。任何有关如何使用的帮助place_country:将不胜感激。
此外,是否有可能一次性获取推文的所有属性,就像使用流 API 时发生的那样

consumer_key = ''
consumer_secret = ''
access_token = ''
access_token_secret = ''

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token = (access_token, access_token_secret)

api = tweepy.API(auth, wait_on_rate_limit=True)

query = '#lockdownindia OR #lockdownextension OR #covid19 -filter:retweets AND place_country:IN'     #['-filter:retweets place_country:IN']        #geocode:20.5937,78.9629,910mi
max_tweets = 100

tweets = tweepy.Cursor(api.search, q=query, since = "2020-06-05", until = "2020-06-21",lang="en").items(max_tweets)

标签: pythontwitterlocation

解决方案


嘿,我已经检查了文档,看来您不应该将 place-country 放在查询中。这是您可以在 Twitter 的 JSON 回复中找到的属性之一。我建议在国家/地区的 place 属性下检查他们的 JSON 消息,并使用循环检查它是否设置为印度。


推荐阅读