【问题标题】:Search Engine for a blog_website(searching inside links )博客网站的搜索引擎(搜索内部链接)
【发布时间】:2016-04-13 23:51:26
【问题描述】:

我为我的博客创建了一个非常基本的搜索选项,它根据主题和关键词生成结果,但我正在寻找的是在某些文章中我必须添加链接,所以如果我的搜索可以通过那些链接基本上是外部网站,例如,如果我指的是其他人的博客以获取更多信息,然后搜索从中查找。这可能吗?我不想去GCSE。 提前致谢。这将有很大帮助。

再次感谢。

【问题讨论】:

  • 能否请您编辑您的 Q 使其不会读作 1 个长连续句?另外,你能解释一下GCSE的首字母缩写词是什么吗?我以前没见过这个缩写词。

标签: search-engine blogs code-search-engine


【解决方案1】:

是的,可以编写一个机器人从链接中抓取外部网站。我做了一个。它抓取了 10 万多个网站 URL。所以是的,可以制作一个,它可以从您的博客中抓取链接。

要创建一个搜索引擎,您需要了解一些有关其工作原理的内部知识...

搜索机器人的工作方式如下:

  1. Crawler 抓取页面。这一步非常简单,因为它使用curl。
  2. Parser 将 HTML 拆分为多个片段,以便可以从页面中提取数据。这有 2 个子组件,其中...

    一个。从页面中提取您要捕获的任何数据,然后将该数据保存到数据库中。

    b.提取链接并将它们放回爬行队列。这会创建一个无限循环,因此您的机器人永远不会停止爬行......(除非其他人的格式错误的 URL 会导致它崩溃,这种情况经常发生。所以准备好经常修复它。)

  3. Indexer 创建查找索引,将关键字映射到网页内容。这有 2 个子组件,因为它...

    一个。创建一个Forward Index,它将每个文档映射到该文档内部的关键字。

    doc1 | bird, aviary, robin, dove, blue jay, cardinal
    doc2 | birds, bird watching, binoculars
    doc3 | cats, eat, birds
    doc4 | cats, generally, don't, like, water, nor, neighborhood, dogs
    doc5 | dog, shows, look, fun
    

    b.从正向索引创建一个Inverted Index,这会反转索引。这允许用户按关键字搜索,然后搜索脚本查找并建议用户可能想要查看的文档。就这样……

    bird | doc1, doc2
    cat  | doc3, doc4
    dog  | doc4, doc5
    

搜索表单的工作方式如下:

  1. 搜索表单向用户显示 HTML 输入框。
  2. 搜索 脚本 将搜索倒排索引以查找要在搜索引擎结果页面中显示的文档链接。
  3. S搜索E引擎R结果P年龄(是的,SERP 是搜索引擎结果页的实际行业首字母缩写词)。这将显示搜索结果链接的列表。您可以按照自己喜欢的方式对其进行样式设置,并且不必看起来像 Google、Microsoft 的 Bing 或 Yahoo 的引擎。

示例:

正在搜索:

"bird" returns links to "doc1, doc2"
"cat"  returns links to "doc3, doc4"
"dog"  returns links to "doc4, doc5"

祝您为您的博客构建搜索引擎好运!

【讨论】:

  • 非常感谢您的回答,我会努力解决的,肯定会带着更多疑问回来:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-18
  • 2012-02-02
  • 2015-06-29
  • 2010-11-16
相关资源
最近更新 更多