我应该使用 Screen Scrapers 还是 API 从网站读取数据

Posted

技术标签:

【中文标题】我应该使用 Screen Scrapers 还是 API 从网站读取数据【英文标题】:Should I use Screen Scrapers or API to read data from websites 【发布时间】:2012-06-19 03:23:16 【问题描述】:

我正在构建一个网络应用程序作为大学项目(使用 Python),我需要从网站读取内容。它可以是互联网上的任何网站。

起初我想使用像 BeautifulSoup、lxml 这样的 Screen Scraper 来读取内容(作者编写的数据),但由于每个网站都是按照不同的标准开发的,所以我无法基于一种逻辑搜索内容。

因此我想到了使用 RSS/Atom(使用 Universal Feed Parser),但我只能获得内容摘要!但我想要所有内容,而不仅仅是摘要。

那么,有没有一种方法可以让我们使用 BeautifulSoup、lxml 等 lib 读取网站内容的逻辑?

或者我应该使用网站提供的 API。

如果是博客作者的博客,我的工作会变得很容易,因为我可以使用 Google 数据 API,但问题是,我是否需要为同一个工作的每个不同 API 编写代码?

什么是最好的解决方案?

【问题讨论】:

看看这个:***.com/questions/5211486/… 也许 Python 中可能有类似的系统,或者你可以利用它。 【参考方案1】:

使用网站的公共 API(如果存在)是迄今为止最好的解决方案。这就是 API 存在的原因,它是网站管理员所说的“使用我们的内容”的方式。抓取可能有一天会奏效,第二天就会中断,这并不意味着网站管理员同意重用其内容。

【讨论】:

【参考方案2】:

您可以查看内容提取库 - 我使用过 Full Text RSS (php) 和 Boilerpipe (java)。 两者都有可用的网络服务,因此您可以轻松测试它是否满足您的要求。您还可以自己下载并运行它们,并进一步修改其在各个站点上的行为。

【讨论】:

我正在寻找一个python库 我尝试了Full Text RSS.. 它只是显示文本,但我需要图像/幻灯片.. 一切。

以上是关于我应该使用 Screen Scrapers 还是 API 从网站读取数据的主要内容,如果未能解决你的问题,请参考以下文章

如何让Screen变成手电筒? [关闭]

改用 screen 作为 byobu 的后端

window.screen.width/height 不应该对应于实际的屏幕宽度/高度吗?

screen的复数

Unity区分安卓,苹果是平板还是手机

linux有趣的命令screen