【问题标题】:Twitter search with urllib2 failing使用 urllib2 的 Twitter 搜索失败
【发布时间】:2016-03-08 16:35:35
【问题描述】:

我正在尝试使用以下代码在 Twitter 上搜索给定的搜索词:

from bs4 import BeautifulSoup
import urllib2

link = "https://twitter.com/search?q=stackoverflow%20since%3A2014-11-01%20until%3A2015-11-01&src=typd&vertical=default"
page = urllib2.urlopen(link).read()
soup = BeautifulSoup(page)
first = soup.find_all('p')

(将链接中的“stackoverflow”替换为您想要的任何搜索词。)但是,当我这样做时(过去几天我每次都尝试过,认为 Twitter 可能太卡了),我得到了这个错误:

No results.
Twitter may be over capacity or experiencing a momentary hiccup.

(为便于查看,省略了 BS 结果中的 HTML。)

这段代码曾经为我工作,但现在不是。此外,将链接直接插入浏览器会得到正确的结果,而 Twitter 状态显示一切正常。

想法?

【问题讨论】:

    标签: python-2.7 twitter beautifulsoup urllib2


    【解决方案1】:

    我能够重现您的结果。我相信 Twitter 正在使用此消息来阻止人们进行抓取。这是有道理的,因为他们花时间发布 API 供人们访问他们的数据,他们不鼓励抓取。

    我的建议是使用此处记录的 API:https://dev.twitter.com/overview/documentation

    【讨论】:

    • 我很高兴看到这个结果的不仅仅是我!话虽如此,我目前正在一个研究项目中使用 API 来收集有关搜索词的推文,但我希望能够对几年前的推文进行历史分析(可能自今年夏天开放以来)高级搜索)。我可以在网络浏览器中执行此操作,但这很慢,我希望有一种更自动化的方式。我是否缺少可以让我在 API 中执行此操作的功能?
    • 抱歉,我没用过 Twitter 的 API,所以不确定。
    猜你喜欢
    • 1970-01-01
    • 2017-06-13
    • 2013-06-26
    • 2023-03-14
    • 1970-01-01
    • 2012-09-29
    • 2013-11-18
    • 2012-09-26
    • 2017-09-21
    相关资源
    最近更新 更多