搜索字段指定检索

字段指定检索

通过对特定字段进行检索(字段指定检索),可以将检索范围缩小到仅标题、仅 URL 等。Fess 爬取的结果按标题、正文等字段分别保存。通过指定这些字段进行搜索,可以按文档类型、大小等设置详细的搜索条件。

可用字段

默认情况下,可以指定以下字段进行搜索。

字段名 说明 数据类型
url 爬取的 URL 关键字
host 爬取的 URL 中包含的主机名 关键字
site 从 URL 中去除协议和查询字符串后的字符串(主机名和路径)。以前缀匹配方式进行搜索 关键字
title 标题 文本
content 正文 文本
content_length 文档大小(字节) 数值
last_modified 文档的最后更新日期时间 日期
timestamp 文档的注册日期时间(无法获取最后更新日期时间时,为爬取执行时刻) 日期
mimetype 文档的 MIME 类型(例如: text/html) 关键字
filetype 由 MIME 类型决定的文件类型(例如: htmlwordpdf。不属于以上情况时为 others) 关键字
filename URL 路径末尾的文件名 关键字
label 文档被赋予的标签值 关键字
lang 文档的语言代码(例如: jaen) 关键字
anchor 从 HTML 页面中提取的链接目标 URL(仅限 Web 爬取) 关键字
click_count 文档被点击的次数 数值
favorite_count 文档被收藏的次数 数值

表: 可用字段列表

“数据类型”表示各字段搜索方式的不同。

  • 关键字: 以整个值为对象进行完全匹配搜索。也可以与通配符检索、前缀检索组合使用。

  • 文本: 以经过分词处理(如形态素分析)得到的词为对象进行全文检索。title、content 等字段属于此类。

  • 数值、日期: 可以使用 范围指定检索

如果未指定字段,则以 title 和 content 为搜索对象。根据设置,也可以添加作为搜索对象的字段。

Note

根据爬取对象的不同,有些字段可能不会被注册值。例如,anchor 仅在 Web 爬取时才会被注册,lang 仅在 HTML 具有语言属性时才会被注册。此外,还可以指定 segment(表示爬取执行单位的会话 ID)、doc_id(系统分配编号的内部 ID)等字段,但通常的搜索中不会使用它们。

当 HTML 文件作为搜索对象时,title 标签注册为 title 字段,body 标签以下的字符串注册为 content 字段。

使用方法

进行字段指定检索时,以”字段名:搜索词”的格式,用冒号(:)分隔字段名和搜索词,在搜索表单中输入并搜索。

对 title 字段以 fess 为搜索词进行搜索时,输入如下内容:

title:fess

通过上述搜索,将显示 title 字段包含 fess 的文档作为搜索结果。

对 url 字段进行搜索时,输入如下内容:

url:https\:\/\/fess.codelibs.org\/ja\/15.8\/*
url:"https://fess.codelibs.org/ja/15.8/*"

前者可以使用通配符检索,因此也可以写成 url:*\/\/fess.codelibs.org\/* 这样的形式。url 中包含的”:”和”/”是搜索查询中的特殊字符,请使用 \ 进行转义(请参阅 特殊字符)。后者不能使用通配符检索,但末尾为 * 的词将作为前缀(前方匹配)检索处理。

Tip

如果想通过 URL 的一部分进行搜索,可以使用 inurl: 对 URL 进行部分匹配检索。例如 inurl:15.8 会搜索 URL 中包含 15.8 的文档。

对于像 mimetype、filetype、site 这样值中包含”/”的字段,请像 mimetype:"text/html" 这样用引号括起来,或者像 mimetype:text\/html 这样进行转义。

关于相关的搜索语法,另请参阅 通配符检索范围指定检索排序检索特殊字符

相关主题