【问题标题】:Twitter API: How to make query keep running?Twitter API:如何让查询继续运行?
【发布时间】:2020-02-26 01:08:51
【问题描述】:

新手程序员在这里寻求帮助。

我已经根据自己的要求设置了代码以使用 Twitter 的高级 API。

SEARCH_TERM = '#AAPL OR #FB OR #KO OR #ABT OR #PEPCO'
PRODUCT = 'fullarchive'
LABEL = 'my_label'
r = api.request('tweets/search/%s/:%s' % (PRODUCT, LABEL), 
                {'query':SEARCH_TERM, 'fromDate':201501010000, 'toDate':201812310000})

但是,当我运行它时,我获得了每次搜索的最大推文数,即 500。 我的问题是我应该添加到查询 maxResults = 500 吗?以及如何使用下一个参数来保持代码运行,直到获得与我的查询对应的所有推文?

【问题讨论】:

    标签: python-3.x api dataframe twitter twitterapi-python


    【解决方案1】:

    要将结果从默认的 100 提高到 500,是的,将 maxResults 添加到查询中,如下所示:

    r = api.request('tweets/search/%s/:%s' % (PRODUCT, LABEL), 
        {
            'query':SEARCH_TERM, 
            'fromDate':201501010000, 'toDate':201812310000,
            'maxResults':500
        })
    

    您可以使用next 参数进行连续查询以获得更多结果。但是,更简单的是,您可以使用 TwitterPager 类让 TwitterAPI 为您执行此操作。这是一个例子:

    from TwitterAPI import TwitterAPI, TwitterPager
    SEARCH_TERM = '#AAPL OR #FB OR #KO OR #ABT OR #PEPCO'
    PRODUCT = 'fullarchive'
    LABEL = 'my_label'
    api = TwitterAPI(<consumer key>, 
                     <consumer secret>,
                     <access token key>,
                     <access token secret>)
    pager = TwitterPager(api, 'tweets/search/%s/:%s' % (PRODUCT, LABEL), 
        {
            'query':SEARCH_TERM, 
            'fromDate':201501010000, 'toDate':201812310000
        })
    for item in pager.get_iterator():
        print(item['text'] if 'text' in item else item)
    

    此示例将继续使用 next 参数发出连续请求,直到无法下载任何推文。

    【讨论】:

    • 您好!通过使用迭代器,每次查询会自动获取 500 条推文,还是应该指定 maxResults?
    • 您需要使用maxResults 指定500。否则,您将批量下载 100 条推文。
    【解决方案2】:

    在 raw_query 中使用 count 变量,例如:

    results = api.GetSearch(
        raw_query="q=twitter%20&result_type=recent&since=2014-07-19&count=100")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-15
      • 1970-01-01
      • 2019-11-25
      • 2012-12-24
      相关资源
      最近更新 更多