分享好友 最新动态首页 最新动态分类 切换频道
docusaurus如何添加一个搜索功能
2024-12-26 13:13

如果algolia不能自动配置的话,我教你手动给docusaurus添加一个搜索

新版博客用docusaurus重构已经有些日子了,根据docusaurus的文档上也申请了Algolia,想一劳永逸的解决博客的搜索问题。但是流水有意,落花无情。

algolia总是不给我回复,我只能对着algolia的申请页面仰天长叹。

按照docusaurus官方文档上说的,当我们需要搜索的时候,打开https://docsearch.algolia.com/apply/填一下申请,提交就行了。

但是可惜的是,我填好资料,点这个join the program很多次了,就是没有反应。

怎么办呢?我仔细检查了它的官方文档,看他的描述说是需要等待2个星期。但是2个星期实在太久了,在我们只争朝夕的今天,怎么行。

还好,我看到它还有一种手动上传的办法,笨是笨了点,总比没有的好。那就开始吧。

首先我们得去Algolia上注册一个账号,然后在这里需要创建一个应用:

应用的旁边,需要创建一个index用来存储搜索数据:

这样,前期的准备工作就做好了。

再在api设置中找到APPLICATION_ID和API_KEY。把他们保存到.env文件中:

APPLICATION_ID=YOUR_APP_ID
API_KEY=YOUR_API_KEY

注意,这里的API_KEY最好是Admin API Key,因为会有一些权限需要。

如果是Admin API Key的话,记得不要分享给别人,这个key的权限比较大,可以删除和更新你的index数据。

接下来,我们还需要一个配置文件。用来配置爬虫信息。下面是一个最基本的配置信息。

其中index_name就是我们刚刚在网站上创建的index_name。当DocSearch scraper程序跑起来的时候,你会发现有一个临时的 + _tmp 索引被创建。

别担心,在程序执行完毕之后,会把这个tmp index会替换最终的index。

start_urls包含的是要开始爬取的链接地址。爬虫会循环爬取链接里面的a标签,除非是遇到了stop_urls。另外爬虫不会爬取其他域名的链接。

selectors是用于创建记录层次结构的所有 CSS 选择器。其中text是强制,必须要有的。

如果你对不同的url有不同的selector方案,那么可以给不同的url配置不同的selectors_key,如下所示:

好了,基本的配置就这些了。

现在可以运行爬虫脚本了,这里有两个选择,一是跑docker,方便快捷。二是从源代码运行,这个就比较麻烦了。

这里我只是希望博客可以有搜索功能,所以源码什么的就算了吧,我们直接跑docker命令:

过一会就运行起来了。但是我们看看日志:

DocSearch: http://www.flydean.com/07-python-module/ 0 records)
DocSearch: http://www.flydean.com/08-python-io/ 0 records)
DocSearch: http://www.flydean.com/09-python-error-exception/ 0 records)
DocSearch: http://www.flydean.com/06-python-data-structure/ 0 records)

Crawling issue: nbHits 0 for myblog

nb_hits表示的是DocSearch 提取和索引的记录数。

怎么是0 records?难道什么都没有爬到?

直觉是我的start_urls不太对,我们把它换成sitemap.xml再试一次:

还是同样的错误。

没办法,再去仔细读一下配置文件的说明。

终于发现了问题,原来这里的selectors写的有问题,#content header h1表示的是在ID为的元素内部,寻找所有属于类的元素,并在这些元素内部寻找所有的元素。但是在docusaurus V3版本中已经发生了变化。

我们把它改写成这样:

再运行一次,这次终于有数据了。

回到网站上看看,已经有数据上传上来了:

好了,我们在docusaurus.config.ts中配置一下,看看效果:

我们在网站上试试效果:

完美,遇到问题的小伙伴可以私信我哟!

最新文章
2012十大最畅销智能手机排行
  巴士三星小编点评:诺基亚Lumia800有墨黑、湖蓝、品红三种颜色可供选择,价格也存在优势,在2800-3000元左右,使其冲上了最畅销手机排行榜,但是还是有很多地方需要改进的。2012十大畅销手机第五名 黑莓Bold9900   黑莓Bold9900是目
24年体彩P5331期[站起来]今晚十位杀号
331期站起来体彩P5今晚十位杀号:357 开:330期站起来体彩P5今晚十位杀号:045 开:81136[十位:3]329期站起来体彩P5今晚十位杀号:178 开:14780[十位:8]328期站起来体彩P5今晚十位杀号:289 开:12504[十位:0]327期站起来体彩P5今晚十位杀号:234
2024年浙江建筑设计加盟成立分公司的步骤+2024top5建筑设计加盟榜单汇总
2024年浙江建筑设计加盟成立分公司的步骤+2024top5建筑设计加盟榜单汇总
AMD 7940HS:AMD 7940HS处理器:高性能移动计算的理想选择与前沿科技应用
  AMD 7940HS 是一款备受关注的移动处理器,专为游戏和内容创作而设计。这款芯片凭借其卓越性能和出色能效,成为许多专业用户和游戏玩家的新宠。本文将深入探讨这款处理器的主要特性、技术优势以及在实际应用中的表现。  为了保证在高
12月17日蚂蚁森林答案最新今日 2024年12月17日蚂蚁森林答案最新
12月17日蚂蚁森林答案最新今日是什么?在每日的蚂蚁森林中,用户们每日都可以在线参与当日更新的知识问答活动,在这个答题活动中用户们每日都能看见不同的最新答案内容,在本次12月17日带来的两道全新的题目等待用户们的参与回答,本次小编
2025云境长风(云境长风)官方网站_云境长风百度百科_上海房天下
云境长风售楼处电话:400-9939-964云境长风官方电话:400-9939-964上海普陀云境长风售楼处电话:400-9939-964云境长风售楼处电话:400-9939-964云境长风官方电话:400-9939-964上海普陀云境长风售楼处电话:400-9939-964苏州河畔|顶层空中
ai怎么设计扁平化折页效果的魅力大叔头像?
ai中设计icon矢量图标很方便,今天我们就来看看画一个大胡子大叔头像的方法,我们要展现粗狂的外表展现了大叔斯文的一面,我们从中学习一下灰黑色与土黄色之间的搭配技巧,还有人物外表元素的细腻画法,下面我们就来看看详细的教程。1、先
40个新专业来了!
关 注【40个新专业来了!】近日教育部更新发布了《职业教育专业目录》共增设40个新专业其中,中职专业3个、高职专科专业20个、职业本科专业17个增设数量是自2021年新版《职业教育专业目录》围绕服务制造业高端化、智能化、绿色化发展,增设
Baichuan 4大模型正式发布,首款AI助手应用“百小应”同步上线
大模型之家讯 5月22日,百川智能正式发布其最新一代基座大模型Baichuan 4,并推出其首款AI助手“百小应”。与上一代模型Baichuan 3相比,Baichuan 4在各项能力上均有显著提升,其中通用能力提升超过10%,数学和代码能力分别提升14%和9%。基
2025江苏省大学排名名单
江苏省实力强的院校有很多,比如东南大学、南京理工大学、南京农业大学、南京航空航天大学、南京师范大学、河海大学、中国矿业大学、南京工业大学、南京医科大学等排名买都比较靠前,以下是小编整理的内容,大家可以看一看。1南京大学2东南
相关文章
推荐文章
发表评论
0评