谷歌Web搜索API已弃用,由自定义搜索API取代(参见http://code.google.com/apis/websearch/)。

我想搜索整个网络,但看起来有了新的API,只有自定义网站可以搜索。

有没有一种方法可以通过编程的方式搜索整个网络?我可以从Java程序中使用JSON查询旧的API。


当前回答

您可以从谷歌自定义搜索主页(http://www.google.com/cse/)创建“无处不在”自定义搜索引擎。 在添加新引擎时,您只需单击“高级”。在这里您可以提供Schema.org站点类型。“Thing”是最通用的类型,它涵盖了整个网络。

其他回答

在文档上面有个备注

注:谷歌Web搜索API有 已正式弃用 2010年11月1日。它将继续 按照我们的弃用政策工作 但是请求的数量 每天制作的数量是有限的。 因此,我们鼓励您搬到 新的自定义搜索API。

弃用策略说他们将继续运行API 3年。因此,如果您已经有了一个使用旧API的应用程序,您还不必急于进行更改。如果您正在编写一个新的应用程序,请使用自定义搜索API。关于如何在Python中做到这一点,请参阅我的回答,但任何语言的想法都是一样的。

你可以像浏览器一样发送它们,然后解析html,这是我一直在做的,即使是像Youtube这样的网站。

有一个叫做JFreeWebSearch的免费Java API,它使用了前面提到的Faroo: http://www.ke.tu-darmstadt.de/resources/jfreewebsearch

Faroo有一个免费的网络搜索API

Gigablast提供了一个廉价的网络搜索API: http://www.gigablast.com/searchfeed.html