现在有哪些替代方法可以使用Google网页搜索API?

Google Web Search API已被弃用,并被自定义搜索API取代(请参阅http://code.google.com/apis/websearch/ )。

我想搜索整个网页,但它看起来像新的API只能自定义网站可以搜索。

有没有办法以编程方式搜索整个网站? 我能够从Java程序中使用JSON查询旧的API。

你可以像浏览器一样发送它们,然后解析html,这就是我一直以来做的事情,即使是像Youtube这样的东西。

是的,Google自定义搜索现在已经取代了旧的搜索API,但仍然可以使用Google自定义搜索来搜索整个网络 ,尽管步骤在自定义搜索设置中并不明显。

要创建一个搜索整个网络的Google自定义搜索引擎:

  1. 在Google自定义搜索主页( http://www.google.com/cse/ )中,点击创建自定义搜索引擎。
  2. 为您的搜索引擎输入名称和说明。
  3. 在“定义搜索引擎”下的“搜索站点”框中,至少输入一个有效的URL(现在只需要www.anyurl.com通过此屏幕即可)。
  4. 选择所需的CSE版本并接受服务条款,然后单击下一步。 选择所需的布局选项,然后单击下一步。
  5. 点击“下一步”部分下的任何链接以导航到您的“控制”面板。
  6. 在左侧菜单的“控制面板”下,单击“基本”。
  7. 在搜索首选项部分,选择搜索整个网站,但强调包含的网站。
  8. 点击保存更改。
  9. 在左侧菜单的“控制面板”下,单击“站点”。
  10. 删除您在初始设置过程中输入的网站。

现在您的自定义搜索引擎将搜索整个网络。

价钱

  • 谷歌自定义搜索每天免费提供100个查询。
  • 之后,您每1000个查询支付5美元。
  • 每天最多有10,000个查询。

来源: https : //developers.google.com/custom-search/json-api/v1/overview#Pricing


  • 搜索质量远低于普通的Google搜索(没有同义词,“智能”等)
  • Google似乎甚至打算彻底关闭这项服务。

谷歌自定义搜索(正如最受好评的答案中所倡导的那样)效果不错,但与其他竞争对手相比(或者与其他Google API相比)非常昂贵。 它有一个小的免费层(每天100个查询),每1000个查询价格高达5美元。

他们提供升级到网站搜索的选项,网站搜索的价格稍微好一点,但这是为了搜索一个网站(你自己的),所以它确实是非常不同的东西 – 不是升级。

主要的选择似乎是:

Bing搜索API
https://datamarket.azure.com/dataset/5BA839F1-12CE-4CCE-BF57-A49D98D29A44
其中有一个免费的5000q /月,价格从每分钟5个查询开始,没有硬限制。

更新:在2016年年底,这个API被关闭,赞成其Azure对应的“认知服务必应搜索API”:
https://azure.microsoft.com/en-us/services/cognitive-services/search/

请参阅这里查看价格图表,1000美元交易起价为3美元/米。 除非我错过了一些东西,这很贵。

雅虎BOSS搜索API
更新:2016年3月31日停止使用。http: //developer.yahoo.com/boss/search/
随着整个网络搜索价格约12查询/便士开始。

还有一些我以前没有听说过:

http://www.gigablast.com/searchfeed.html

http://www.faroo.com/hp/api/api.html

http://www.commoncrawl.org/

http://www.entireweb.com/search_api/implementation/
[已停用 – 如下所述]

在这个SO帖子里有一些讨论。
[因为脱离主题而关闭了,现在已经不存在]

以下是自定义搜索控制面板底部的一个选项: “要搜索的网站” ,您可以选择“搜索整个网站,但强调包含的网站”

自定义搜索控制面板 - 要搜索的站点

法鲁有一个免费的网页搜索API

我刚刚从Common Crawl遇到这个问题。

http://www.commoncrawl.org/

可能是我们都在寻找的答案!

文档顶部有一个注释:

注意:截至2010年11月1日,Google Web Search API已被正式弃用。根据我们的弃用政策 ,Google Web Search API将继续工作,但您每天可能提出的请求数量将受到限制。 因此,我们鼓励您转到新的自定义搜索API 。

贬值政策表示,他们将继续运行API三年。 所以,如果你已经有一个使用旧API的应用程序,你不必急于改变的东西。 如果您正在编写新的应用程序,请使用自定义搜索API 。 在这里看到我的答案如何在Python中做到这一点,但这个想法对于任何语言都是一样的。

有一个名为JFreeWebSearch的免费Java API,它使用了已经提到的Faroo: http ://www.ke.tu-darmstadt.de/resources/jfreewebsearch

您可以在Google自定义搜索主页( http://www.google.com/cse/ )上创建“无处不在”的自定义搜索引擎。 在添加新的引擎时,您应该点击“高级”。 在那里您可以提供Schema.org网站类型。 “ 东西 ”是最通用的类​​型,涵盖了所有的网络。

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