首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >"Indeed.com“和"hotelscombined.com”如何搜索其他站点?

"Indeed.com“和"hotelscombined.com”如何搜索其他站点?
EN

Stack Overflow用户
提问于 2014-10-30 23:40:06
回答 1查看 527关注 0票数 0

我正在尝试为一个特定的行业建立一个垂直(元)搜索引擎。我正在尝试做一些类似于"indeed.com“(工作搜索引擎)和"hotelscombined.com”(酒店搜索引擎)的东西。我想知道这两个搜索引擎是如何构建它们的搜索结果的?

1)它是否使用其他网站的API来提供结果?(对我来说似乎很奇怪,因为一些结果来自小而原始的站点)。

2)其他网站会更新这些搜索引擎吗?(看起来也很奇怪,如上所述)

3)他们是否在内部理解并为他们提供结果的每个网站创建地图?(如果是这样的话,他们可能需要不断地监控这些网站的结构,看是否有任何变化。在我看来很容易出错)。

4)还有其他可能性吗?

我甚至不知道从哪里开始,所以任何正确方向的指针都是非常感谢的。(书籍、教程、提示、想法……)

谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-10-30 23:55:27

它主要是1和3的混合。理想情况下,站点应该有某种他们公开和记录的API。如果不是,则必须执行data scraping。基本上,你是在对他们的页面进行逆向工程。如果它们通过未记录的API异步获得结果,您也可以使用该API (直到它们做出重大更改)。否则,只需将文本直接从HTML中提取出来即可。

我不知道有什么更先进的技术,因为我不是自己做的,但我的几个熟人已经开始开发移动应用程序,这些应用程序需要用到体育比分之类的东西(不是为了搜索,而是同样的要求--把别人的数据放到我们的数据库里)。低技术的“把它从HTML中拉出来,直到他们改变HTML并破坏一切”是他们工作的标准实践。

2是可能的,但要做到这一点,你必须要么与你想要使用的每个数据源进行业务安排,要么获得足够的市场存在,让每个人都想上传他们的数据。

此外,在实际搜索时不要这样做(除非您有其他限制,就像Charles Duffy在他的评论中指出的那样)。您运行一个定期输出的过程,获取它能找到的所有数据,并将其插入到您自己的数据库中,然后进行搜索。这允许您将数据收集与数据搜索解耦-您的搜索页面将不必知道并处理来自抓取器的错误,而抓取器只需从每个源“获取所有数据”,而不是能够转换来自您的站点的查询来搜索每个源。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26657345

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档