繁体   English   中英

使用 Tweepy 在一次通话中获取不同主题标签的推文

[英]Getting tweets for different hashtags in one call using Tweepy

我想使用 Tweepy 获取不同 Hash 标签的流行和最新推文。 我现在的解决方案如下所示。 但是这种方法对每个主题标签进行单独调用,这在存在速率限制的情况下并不好。 是否有可能在一个电话中做到这一点? 如果是这样,怎么做?

for ht in hash_tags:
    tweets = tweepy.Cursor(api.search, ht + " -filter:retweets", 
        result_type='mixed', since=date_since, 
        tweet_mode='extended').items(num_of_tweets)
    add_tweets(tweets)

您可以使用Twitter 标准搜索运算符中的 OR 运算符运行包含您需要的许多主题标签的搜索,而不是运行一次搜索一个主题标签的for循环。 这是一个更广泛的搜索,您会得到每个主题标签的混合结果,但它会减少您提出的总体请求数量。

因此,将所有主题标签添加到字符串中,并将其作为查询传递。

#just an example, not the nicest!
    query_string = ""
    for i in hash_tags:
        if i == hash_tags[-1]:
            query_string+=str(i)
        else:
            query_string+=str(i) + " OR "
    tweets = tweepy.Cursor(api.search, q=query_string + " -filter:retweets", 
    result_type='mixed', since=date_since, 
    tweet_mode='extended').items(num_of_tweets)
add_tweets(tweets)

这意味着您的搜索将类似于#coolstuff OR #reallycoolstuff OR #evencoolerstuff 这样做可能值得增加返回的项目数量,因为搜索范围会更广。

请记住,您可以搜索的查询大小是有限制的,因此如果您有很多主题标签,则可能需要将其分解为较小的查询。 这也可以帮助您获得更好的结果(例如,您的查询字符串中更受欢迎的主题标签会占用您的大量结果,因此请单独搜索不太受欢迎的主题标签;不过,您如何衡量这一点取决于您!)

希望这可以帮助您入门。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM