Twitter搜索API:按推文ID搜索

时间:2015-09-14 12:04:08

标签: python twitter twitter-search

我想使用twitter search APItweet id发送查询,但似乎您无法通过获取其ID来搜索推文(可能是因为如果您已经拥有该ID,则无需搜索它ID)。例如,假设我们有一条推文https://twitter.com/great_watches/status/643389532105256961,我们希望将643389532105256961发送到搜索API,以查看推文是否在搜索API上可用。

我需要它,因为我只想将twitter搜索API与twitter流API进行比较。 我有一个python脚本正在收听一些关键字的流,每当推文发布时,我都想在twitter搜索api上搜索它,看看它是否也可用。没意思啊?

2 个答案:

答案 0 :(得分:1)

您无法将Search API与Streaming API进行比较,因为他们正在检索不同类型的信息。

来自Search API docs

  

Twitter 搜索API 是Twitter的v1.1 REST API的一部分。它允许   对最近或流行推文的索引的查询和行为   类似于,但不完全像可用的搜索功能   Twitter移动或网络客户端,例如Twitter.com搜索。

     

在介入之前,了解搜索API是非常重要的   专注于相关性而非完整性。这意味着一些推文   用户可能会在搜索结果中丢失。如果你想匹配   您应该考虑使用Streaming API来完整性。

这是根据您提供的信息解释场景。

  1. 您正在播放单词Message并找到匹配项。
  2. 您立即获取该匹配并在搜索API上查找
  3. 问题是当你从Streaming API(实时)开始,而你想要在搜索API上找到相同的那个,你会发现冲突更多相关的推文和流行的将取代它。

    您需要重新定义发送到搜索API的查询,以包含完全相同的查询(例如,包含超过python的流式API)。

答案 1 :(得分:0)

你可以使用tweepy api来获取它。从https://apps.twitter.com/获取消费者密钥,密钥和访问密钥,然后执行以下操作:

consumer_key = 'XXXX'
consumer_secret = 'XXXX'
access_key = 'XXXX-XXXX'
access_secret = 'XXXX'
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)
api = tweepy.API(auth)

tweet = api.statuses_lookup(['643389532105256961'])
a1[0].text # Prints the message

此处有更多信息http://docs.tweepy.org/en/v3.5.0/api.html#API.statuses_lookup