我试图在Twitter的高级API中搜索tweets。我将TwitterAPI文档中的格式复制到当前代码中,但出现以下错误。我错过了什么?我对Python还比较陌生。我正在使用Twitter的sandboxpremium搜索API来搜索完整的历史记录。我可能在如何使用get_iterator()的知识上有差距。提前谢谢!你知道吗
api = TwitterAPI(key, secretkey, token, secrettoken)
#search tweets #added edit to pass api through Twitter Pager
tweets = TwitterPager(api, 'tweets/search/%s/:%s' % (PRODUCT, LABEL),
{'query': 'pizza',
'lang': 'en'
})
for item in tweets.get_iterator():
print(item['text'] if 'text' in item else item)
我得到以下错误:
---------------------------------------------------------------------------
TwitterRequestError Traceback (most recent call last)
<ipython-input-71-85784cf972fe> in <module>
----> 1 for item in tweets.get_iterator():
2 print(item)
~\AppData\Local\Continuum\anaconda3\lib\site-packages\TwitterAPI\TwitterPager.py in get_iterator(self, wait, new_tweets)
45 start = time.time()
46 r = self.api.request(self.resource, self.params)
---> 47 it = r.get_iterator()
48 if new_tweets:
49 it = reversed(list(it))
~\AppData\Local\Continuum\anaconda3\lib\site-packages\TwitterAPI\TwitterAPI.py in get_iterator(self)
204 """
205 if self.response.status_code != 200:
--> 206 raise TwitterRequestError(self.response.status_code)
207
208 if self.stream:
TwitterRequestError: Twitter request failed (422)
我的代码与basic一起工作api.请求(…)'方法使用相同的搜索参数。但是我需要使用TwitterPager和get_iterator()来返回更多的结果。你知道吗
我不熟悉您正在使用的特定包,但我猜您实际上并没有将您创建的api对象传递给它。因此,它试图对您的第一个参数(字符串)执行其操作,该参数实际上应该是api实例。试试这个:
编辑
在these docs中,您必须将api作为第一个参数发送给寻呼机。你知道吗
相关问题 更多 >
编程相关推荐