【问题标题】:Tweepy: Search in stream apiTweepy:在流 api 中搜索
【发布时间】:2014-12-21 04:12:57
【问题描述】:

在 Twitter 的 Tweepy api 中,我知道我们可以通过 -

搜索推文
api.search(q="a and b")

在这里它将搜索以任意顺序出现在状态中的任意位置的 a 和 b。但是我需要对 Tweepy 流 api 做同样的事情,有什么办法吗?

我知道有田径场 -

stream.filter(track=['a','b'])

但这会返回包含 a 或 b 的状态,我需要这两个关键字的顺序不限。

我们也可以这样做,只搜索 a 然后手动过滤掉包含 b 的状态,但这样我们就会丢弃大量的 no。作为流 api 的推文仅提供 1% 的推文

【问题讨论】:

    标签: twitter tweepy


    【解决方案1】:

    是的,这很容易做到。查看Twitter API track paramenter 的文档:

    以逗号分隔的短语列表,用于确定将在流中传递的推文。一个短语可以是一个或多个用空格分隔的术语,如果该短语中的所有术语都出现在推文中,则该短语将匹配,而不管顺序和忽略大小写。通过此模型,您可以将逗号视为逻辑 OR,而空格等效于逻辑 AND。例如,‘the twitter’(the AND twitter)‘the,twitter’(the OR twitter)

    按此逻辑,按ab 过滤:

     stream.filter(track=['a b'])
    

    【讨论】:

    • 抱歉回复晚了。我以前尝试过,但返回的结果 a 和 b 一起出现,就像它搜索“a b”一样。我想问题是使用 tweepy 的跟踪功能吗?因为我使用 tweepy 而不是 twitter 来传输推文。我最近在博客上发现,在 tweepy 的 api 中没有办法做到这一点,只需从 A 过滤,获取所有推文然后在 B 上过滤
    猜你喜欢
    • 2014-04-23
    • 2021-02-23
    • 1970-01-01
    • 2016-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-02
    • 2018-01-12
    相关资源
    最近更新 更多