从时间轴获取推文的问题,因为Twitter没有返回'next_results'

kun*_*dan 5 twitter twython tweepy

我正在尝试使用此处演示的max_id字段从Twitter时间线获取推文next_results.(带有next_results的Twython搜索API)

对于大多数查询,我得到了所需数量(500+)的推文,但对于一些我得到的推文少于200条.

在查看返回的内容时,next_results我发现在返回100条推文之后,响应的next_results字段缺失.查询主题不能只有200条推文,因为我在热门时搜索此主题,在Twitter上我可以看到超过200条推文.

还有其他人也面临这个问题.有没有解决方法?

下面是输出,在第二个响应'next_results'中缺少字段.

TEST_PROGRAM >> Calling twitter to get tweets for  #TheWorstLieEver

{u'count': 100, u'completed_in': 0.066, u'max_id_str': u'432942833725497345', u'since_id_str': u'0', **u'next_results': u'?max_id=432540545630494719&q=%23TheWorstLieEver&count=100&include
_entities=1&result_type=mixed'**, u'refresh_url': u'?since_id=432942833725497345&q=%23TheWorstLieEver&result_type=mixed&include_entities=1', u'since_id': 0, u'query': u'%23TheWorstLieEver
', u'max_id': 432942833725497345L}

{u'count': 100, u'completed_in': 0.111, u'max_id_str': u'432540545630494719', u'since_id_str': u'0', u'refresh_url': u'?since_id=432540545630494719&q=%23TheWorstLieEver&result_type=mixe
d&include_entities=1', u'since_id': 0, u'query': u'%23TheWorstLieEver', u'max_id': 432540545630494719L}
Run Code Online (Sandbox Code Playgroud)

kun*_*dan 2

我得到了答案。如果您正在寻找容量,则需要使用 Streaming API。Twitter 搜索 API 侧重于查询的相关性,因此可能不会返回所有推文。Twitter 文档称,在参与之前,重要的是要知道搜索 API 关注的是相关性而不是完整性。这意味着搜索结果中可能会丢失一些推文和用户。如果您想匹配完整性,您应该考虑使用 Streaming API。