【问题标题】:Getting 'unable to find guest token' error with snscrape使用 snscrape 获取“无法找到访客令牌”错误
【发布时间】:2021-02-13 06:47:43
【问题描述】:

我正在使用 snscrape 下载一些推文。我使用如下所示的简单脚本来抓取与搜索查询匹配的推文。

import snscrape.modules

query = '''(corona OR #covid) until:2020-02-02 since:2020-01-31'''
scraper = snscrape.modules.twitter.TwitterSearchScraper(query=query)

for tweet in scraper.get_items():
    print(tweet.content)
    break

在我的本地机器上,这运行良好。但是,当我部署到 Heroku 实例时,我收到一个错误 - “无法找到来宾令牌”,由源代码中的 this method 引发。我很难弄清楚这部分代码中发生了什么,因为它根本没有记录在案,而且错误不会在本地发生的事实使调试变得困难。谁能帮我理解这个方法在做什么,以及如何让它在 Heroku 上运行,而不仅仅是在本地运行?下面是来自 heroku cli 的堆栈跟踪。

2020-10-30T18:55:00.849163+00:00 app[worker.1]: File "/app/.heroku/python/lib/python3.8/site-packages/snscrape/modules/twitter.py", line 131, in get_items
2020-10-30T18:55:00.849284+00:00 app[worker.1]: guestToken = self._get_guest_token()
2020-10-30T18:55:00.849289+00:00 app[worker.1]: File "/app/.heroku/python/lib/python3.8/site-packages/snscrape/modules/twitter.py", line 109, in _get_guest_token
2020-10-30T18:55:00.849496+00:00 app[worker.1]: raise snscrape.base.ScraperException('Unable to find guest token')
2020-10-30T18:55:00.849497+00:00 app[worker.1]: snscrape.base.ScraperException: Unable to find guest token

【问题讨论】:

    标签: python heroku web-scraping


    【解决方案1】:

    遗憾的是,由于 Twitter,这似乎是不可能的, 您可以阅读此错误报告的更多信息:https://github.com/JustAnotherArchivist/snscrape/issues/79

    【讨论】:

    • 这很令人沮丧,因为我刚刚花了一天时间调整我的代码库以使用 snscrape 而不是 got3,一个月前他们就关闭了它。根本没有已知的解决方法吗? :(
    猜你喜欢
    • 2022-01-16
    • 2012-07-15
    • 2014-05-08
    • 2013-08-23
    • 2017-11-17
    • 1970-01-01
    • 2022-01-01
    相关资源
    最近更新 更多