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

Should I use Screen Scrapers or API to read data from websites

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

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

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

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

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

我的工作很容易,如果它是一个博客博客,因为我可以使用Google Data API,但麻烦的是,我是否需要为同一工作的每个不同的API编写代码?

最佳解决方案是什么?


使用网站的公共API(目前存在)是最好的解决方案。这就是API存在的原因,这是网站管理员说"使用我们的内容"的方式。搜刮可能在一天之内有效,而在第二天可能会中断,但这并不意味着网站管理员同意重新使用其内容。


您可以研究内容提取库-我使用了全文RSS(php)和Boilerpipe(java)。两者都有可用的Web服务,因此您可以轻松地测试它是否满足您的要求。您也可以自己下载并运行它们,并进一步在各个站点上修改其行为。