现在有哪些替代方案已经弃用了Google网络搜索API?

Dan*_*Dan 312 google-api deprecated google-search google-custom-search

Google Web Search API已弃用,已替换为自定义搜索API(请参阅http://code.google.com/apis/websearch/).

我想搜索整个网络,但看起来新API只能搜索自定义网站.

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

Ban*_*ian 461

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

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

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

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

价钱

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

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


  • 搜索质量远低于普通的谷歌搜索(没有同义词,"情报"等)
  • 似乎谷歌甚至计划完全关闭这项服务.

  • 警告:我们使用免费版本进行开发,但升级到付费版本(进行超过100次搜索),谷歌强制您关闭"搜索整个网络但强调包含的网站" (58认同)
  • 谢谢你.希望这是一个有效的程序,而不是等待谷歌插入的漏洞! (25认同)
  • 谢谢!这可能是互联网上解决我问题的唯一答案.令人难以置信的是,为什么Google会终止对其核心服务的直接API支持. (9认同)
  • 但如何与json一起使用? (6认同)
  • "2017年4月1日,Google将停止销售Google Site Search.所有新购买和续订必须在此日期之前完成.该产品将于2018年4月1日完全关闭." (5认同)
  • @MFARID它不仅错过了社交/实时/等数据.它不允许基于同义词的搜索,它完全缺少智能.例如,"john doe northpole"如果"john doe"现在居住在"southpole"并且在他的网站上更改了这些信息或删除了"northpole"这个词,或者他或者你做了一个像"nortpole"这样的拼写错误,就不会返回结果.在我看来,自定义搜索几乎没用. (3认同)
  • 确认工作.结果与实时搜索略有不同.有什么想法吗?Bing的API也存在同样的问题. (2认同)
  • 由于个性化和本地搜索结果,结果略有不同. (2认同)
  • 这就是Google声称搜索结果不同的原因https://support.google.com/customsearch/answer/141877?hl=zh-CN主要:使用指定网站(此处不适用),没有社交或个性化或实时结果 (2认同)
  • 而且......如果他们已经关闭了漏洞,现在迫使你至少搜索"一个"网站.您可以尝试创建零内容的网址/网站.只是一个空白的index.html页面.然后,结果应与通用Web搜索相同.'只是一个想法... (2认同)
  • 请注意,这仅适用于免费版https://support.google.com/customsearch/answer/2631040 (2认同)

Tom*_*Tom 52

Google自定义搜索(在评分最高的答案中提倡)运行良好,但与其竞争对手(下方)或与其他Google API相比,价格非常昂贵.它有一个小的免费套餐(100个查询/天)和每1000个查询5美元的非常高的价格.

他们提供了升级到网站搜索的选项,它的价格稍微好一点,但是这是为了搜索一个网站(你自己的),所以它确实是完全不同的 - 而不是升级.

主要的替代方案似乎是:

Bing Search API
https://datamarket.azure.com/dataset/5BA839F1-12CE-4CCE-BF57-A49D98D29A44
其免费等级为5000q /月,价格从每分钟5个查询开始,没有硬性限制.

更新:在2016年底,该API被关闭,转而支持其Azure对应的"Cognitive Services Bing Search API":https:
//azure.microsoft.com/en-us/services/cognitive-services/search/

请参阅此处获取定价图表,1,000笔交易的起价为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帖子上对其中一些进行了一些讨论.
[因为偏离主题而关闭,现在已经不见了]

  • Bing Search API版本5现在允许每月在所有Bing Search API(Web,图像,视频,新闻搜索)中进行多达1,000笔交易 - https://www.microsoft.com/cognitive-services/en-us/pricing.我把一些样本放在一起 - http://mvark.blogspot.in/2016/06/how-to-use-bing-search-v5-api-with.html (2认同)

Zim*_*m3r 32

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

  • 是的它打破了服务条款,但我个人不担心.谷歌可以处理一些刮痧,毕竟他们已经赚了大量其他人的网站. (135认同)
  • 来吧人.别那么天真.谷歌不能强迫ToS放下你的喉咙.为了违反ToS,您必须首先同意(以书面形式,或点击"是的,我接受条款"之类的按钮).想一想:我在我的网页上放了一个ToS,每个访问该页面的人都要给我10000美元.我可以对访问者强制执行此ToS吗?我是否必须立即. (105认同)
  • 我被告知googles服务条款禁止蜘蛛...... (63认同)
  • 来自[TOS](http://www.google.com/accounts/TOS):"您明确同意不通过任何自动方式访问(或尝试访问)任何服务(包括使用脚本或网络抓取工具) )......" (52认同)
  • "违反与服务提供商的服务条款"绝不是一个好建议.解析网页是一种在没有警告的情况下从一天到下一天打破的东西,这是一个糟糕的建议 - 这就是它被投票支持更多的原因. (17认同)
  • @ Zimm3r阅读"downvote"按钮上的工具提示; 这就是为什么.此外,因为谷歌的TOS不允许这个建议. (13认同)
  • @Altar他们仍然可以阻止你的IP;)曾经在Google搜索中看到过验证码吗?有些人有. (10认同)
  • @ Zimm3r如果答案是否有用是主观的.我没有发现它与op有相同的问题是有用的,因为它既不是一个干净的解决方案,也不是TOS允许的东西. (5认同)
  • @Hugo答案是有用的,因为它做了所要求的事情,而我仍然被拒绝接受一个被接受的答案,这有效,这是有用的,并且询问者有责任决定谷歌TOS而不是我的. (4认同)
  • 不,您无法对随机网络冲浪者强制执行ToS.但是,创建一个抓取网页的程序显示出明确的意图,这样做所需的技能会让你进入更高级别的"合理的人".你可能不会失去刑事诉讼,但可能会失去民事诉讼.IANAL.参考:Aaron Swartz. (4认同)
  • -1 @ Zimm3r,你说你提供了"有效答案",但我不同意.我不认为这是一个有效的答案,当它需要使用网络服务,而特别是打破他们的服务条款你的解决方案不能违反谷歌的使用条款,因此在我看来,这不是一个真正有效的答案.这就像有人告诉你他们需要钱买杂货,你建议他们抢劫银行.当然,从技术上讲,它是一种选择,但不是一种可行的选择. (4认同)
  • 我不记得告诉他们打破服务条款,我给了他们一个被认为是最好的有效答案,他们选择用这些信息做他们想做的事情. (3认同)
  • 刮网页有以下缺点:(1)谷歌不喜欢它 - 你可能会面临IP禁令,验证码和其他障碍.(2)网页的HTML代码经常更改 - 您最终会在长期项目中反复修复代码.(3)API可能会为您提供有关搜索结果的更多元数据,而不是网页.我贬低了这个答案.但我不是任何一种法律纳粹.由于上述原因,这种方法根本不好. (3认同)
  • @Hugo不,它不是主观的,或者至少不是您建议的程度,如果它以可行的方式回答问题是很有用的,应该对TOS违规进行权衡,但不能使某些事情完全无用。 (2认同)
  • 顺便说一句:Google 如此坚决地阻止抓取的原因不是因为您认为的原因:这不是因为它可能会花费带宽 - 这是便宜的。这是因为谷歌最有价值的资产之一是它的查询日志是对集体意识最有效的洞察之一。被机械化查询污染会使它变得毫无价值,因此他们正在投入所有精力来抑制以污染该数据集的方式进行的抓取。 (2认同)

Yis*_*ang 26

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

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

  • 当您升级到付费搜索时,Google会强制您关闭该选项.免费限制为100次搜索. (5认同)

Jac*_*ack 14

Faroo有一个免费的Web搜索API

  • Faroo可能的交易破坏者是您的API密钥仅限于您在注册期间指定的IP地址. (7认同)
  • 这些人还在运作吗?我已经请求了API密钥而没有听到任何消息. (6认同)

Dan*_*Dan 5

我刚从Common Crawl遇到过这个问题.

http://www.commoncrawl.org/

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

  • 它的指数有限,每年更新一次.它最终非常昂贵,因为你必须插入Amazon S3. (3认同)