6

我们如何根据哈希标签查找或获取推文。即我想查找关于某个主题的推文?是否可以在 Python 中使用 Twython?

谢谢

4

1 回答 1

19

编辑 我使用 Twython 的搜索 API 挂钩的原始解决方案似乎不再有效,因为 Twitter 现在希望用户经过身份验证才能使用搜索。要通过 Twython 进行经过身份验证的搜索,只需在初始化 Twython 对象时提供您的 Twitter 身份验证凭据。下面,我将粘贴如何执行此操作的示例,但您需要查阅 Twitter API 文档以了解GET/search/tweets以了解您可以在搜索中分配的不同可选参数(例如,到页面通过结果,设置日期范围等)

from twython import Twython

TWITTER_APP_KEY = 'xxxxxx'  #supply the appropriate value
TWITTER_APP_KEY_SECRET = 'xxxxxx' 
TWITTER_ACCESS_TOKEN = 'xxxxxxx'
TWITTER_ACCESS_TOKEN_SECRET = 'xxxxxx'

t = Twython(app_key=TWITTER_APP_KEY, 
            app_secret=TWITTER_APP_KEY_SECRET, 
            oauth_token=TWITTER_ACCESS_TOKEN, 
            oauth_token_secret=TWITTER_ACCESS_TOKEN_SECRET)

search = t.search(q='#omg',   #**supply whatever query you want here**
                  count=100)

tweets = search['statuses']

for tweet in tweets:
  print tweet['id_str'], '\n', tweet['text'], '\n\n\n'

原始答案

Twython 文档中所述,您可以使用 Twython 访问 Twitter 搜索 API:

from twython import Twython
twitter = Twython()
search_results = twitter.search(q="#somehashtag", rpp="50")

for tweet in search_results["results"]:
    print "Tweet from @%s Date: %s" % (tweet['from_user'].encode('utf-8'),tweet['created_at'])
    print tweet['text'].encode('utf-8'),"\n"

等等...请注意,对于任何给定的搜索,您最多可能最多会收到大约 2000 条推文,最多可能会回到一两周左右。您可以在此处阅读有关 Twitter 搜索 API 的更多信息。

于 2013-01-05T22:21:57.360 回答