【问题标题】:Search Engine in Java?Java中的搜索引擎?
【发布时间】:2013-12-28 04:55:49
【问题描述】:
  1. 我正在尝试创建一个搜索引擎,只是为了学习和获得更多 Java 经验。

    我的目的是在服务器上存储大约 100 个文件,混合 html、xml、doc、txt,并且每个文件都有元数据。

    所以当我搜索关键字时,它应该显示一个带有元描述的文件,如谷歌。

    我的问题是,除了html,你能把元数据添加到任何其他文件格式,以便显示元描述。

  2. 您能否将我指向一个 Java 搜索引擎,它可以在文件格式(txt、html)中搜索并显示结果。

    我正在为此编写自己的代码,但想看看其他人的代码以获得帮助?

【问题讨论】:

    标签: java search-engine


    【解决方案1】:

    Lucene 是规范的 Java 搜索引擎。

    要从各种来源添加文档,请查看Apache Tika,以及带有服务/Web 界面的完整系统,solr

    Lucene 允许将任意元数据与其文档相关联。 Tika 会自动从各种格式中剔除元数据。

    【讨论】:

      【解决方案2】:

      1)我的问题是除了html之外,你可以将元数据添加到任何其他文件格式,以便显示元描述。

      一般来说,您会使用数据库并将元数据与文档一起存储在那里。 然后,您将使用数据库查询(可能使用 SQL like 或 ilike)进行关键字搜索。

      文件可能存储在硬盘驱动器上,仅包含 DB 中的路径,也可能以 CLOB 或 BLOB 的形式放入数据库,具体取决于您是文本文档还是二进制文档。

      2) 您能否指出一个 Java 搜索引擎,它可以在文件格式(txt、html)中搜索并显示结果。

      试试Apache Lucene

      【讨论】:

        【解决方案3】:

        apache nutch

        Apache Nutch is an open source web-search software project.
        

        Nutch 构建在 lucene/solr 之上用于索引,tika 用于解析文档,并添加了自己的网络爬虫。

        【讨论】:

          【解决方案4】:

          真正好的是Lucene。有很多插件(例如,您可以从 .doc 中读取),支持多种语言和很多算法(例如 Levenshtein 距离)

          【讨论】:

            【解决方案5】:
            • 如今,Google 完全忽略了元描述,因为它要么被滥用,要么没有包含重要的价值
            • Lucene 和/或 Solr 可能会做你想做的事,看看吧。
            • 100 个文件是非常小的数量,如果是为了锻炼,您可以以任何您喜欢的方式管理这些数据量。

            【讨论】:

              【解决方案6】:

              ...lucenesolr 想到其他人的代码。

              【讨论】:

                【解决方案7】:

                您必须使用多个库。首先,正如前面提到的许多人,您可以使用Lucene 进行实际搜索。但是,Lucene 只处理纯文本,因此您需要从您索引的文件中提取它。 为此,您可以使用Apache Tika

                要开始使用,您可能应该购买本书Lucene in Action 2nd edition。那里的大多数示例仍然是最新的。如果你想成为一个小气鬼,你也可以看看那个页面上提供的源代码。

                【讨论】:

                  【解决方案8】:

                  Apache Tika 提取元数据

                  Apache Tika Apache Tika 工具包是一个 ASFv2 许可的开源 从数字文档中提取信息的工具。蒂卡允许 搜索引擎、内容管理系统和其他应用程序 处理各种数字文档,轻松检测和 从所有主要文件格式中提取元数据和内容。

                  【讨论】:

                    猜你喜欢
                    • 2023-03-24
                    • 2011-12-13
                    • 1970-01-01
                    • 2014-07-27
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 2013-11-13
                    相关资源
                    最近更新 更多