ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Hister搜索结果详解:标题、摘要、favicon与访问数从哪来

Hister搜索结果详解:标题、摘要、favicon与访问数从哪来 Hister搜索结果详解标题、摘要、favicon与访问数从哪来【免费下载链接】histerYour own search engine项目地址: https://gitcode.com/GitHub_Trending/hi/histerHister 是一款自托管的个人搜索引擎Your own search engine把浏览历史和收藏页面全部收进自己的索引库。当你打开 Hister 搜索结果页时每条结果都会展示标题、摘要、网站 favicon 图标和一个小数字角标。它们到底从哪来本文带你从采集、存储到前端渲染一次性搞清楚 Hister 搜索结果的完整生成链路 。一、标题先看 og:title再看title标签Hister 拿到一个网页的 HTML 后会按固定的优先级提取标题逻辑在 server/document/fromhtml.go 中优先读取社交分享标签og:title或twitter:title——这是网站为分享场景精心准备的标题通常比浏览器标签页标题更规范如果都没有才回退到普通的title标签对于本地文件直接用「父目录/文件名」作为标题见 server/document/document.go。URL 也遵循同样的思路优先取canonical规范链接这样带 utm 参数的不同分享链接会被归一化成同一条结果 。二、摘要索引时抽取全文检索时高亮片段结果卡片下方的那几行摘要文字并不是一次性存好的固定文本而是两段协作入库阶段Hister 用一套提取器从网页 HTML 中抽取正文纯文本连同标题一起写进全文索引。比如针对 Mastodon、GitHub、Wikipedia 等站点都有专属提取规则检索阶段前端发起搜索时会带上highlight: HTML参数见 webui/app/src/lib/search.ts服务端从索引中取出匹配片段把命中的关键词包进高亮标签返回渲染阶段前端把摘要限制为最多 3 行line-clamp-3关键词以mark高亮显示渲染代码在 webui/app/src/routes/page.svelte。三、favicon页面图标或默认 favicon.ico结果列表左侧的小图标来自两条路径解析网页中的link relicon拿到真实图标地址没有声明时回退到默认的/favicon.icoserver/document/document.go。图标数据以 base64 形式保存并 gzip 压缩后单独落盘。检索接口只返回一个favicon_key浏览器再通过/api/favicon?key...端点按需取图端点实现见 server/endpoints.go。前端组件 ResultFavicon.svelte 还做了兜底加载失败时显示一个地球图标置顶结果则显示星标 ⭐。四、访问数角标add_count 是怎么累加的标题左侧偶尔会出现一个方框小数字它的悬停提示是index count——也就是这个 URL 被添加进索引的总次数字段名为add_count每次浏览器扩展或手动收集提交同一个 URL计数就 1测试用例见 server/indexer/files_test.go只有当计数大于 1时前端才展示角标见 webui/app/src/routes/page.svelte在历史时间线页面中同一 URL 会显示x3之类的次数语义是这条链接被记录了 3 次可以帮你快速识别高频访问的内容 。小结标题和 URL 来自页面的 Open Graph 元信息摘要来自提取器抽取的正文加检索时高亮favicon 来自图标解析端点而访问数角标是服务端对同一 URL 重复收录的计数。理解了这条链路你就能知道如何调整自己的采集策略让 Hister 的搜索结果更干净、更贴近自己的使用习惯。【免费下载链接】histerYour own search engine项目地址: https://gitcode.com/GitHub_Trending/hi/hister创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表