集成algolia搜索
algolia介绍
TIP
algolia 是一个网站全局搜索工具
能够提供毫秒级的数据库搜索服务,并且其服务能以 API 的形式方便地布局到网页、客户端、APP 等多种场景
爬取网站数据
TIP
有两种办法爬取网站数据
- 使用官方的自动爬取工具docsearch ,爬取完成以后可以直接使用
- 自己使用官方的docker镜像爬取,这个比较麻烦
官方爬取
TIP
1, https://docsearch.algolia.com/apply/ 提交网站信息
2,如果申请通过,我们就会收到邮件
3,回复确认你是站长网站的维护者并可以更改代码并简单说明要用 DocSearch 产品即可,之后就会得到官方发送的 AppID 等信息
4,接下来就可以使用了
docker爬取
1, 到官网注册账号 https://www.algolia.com/
2, 下载jq工具,放在根目录 https://stedolan.github.io/jq/
3,新建.env文件放在根目录
shell
# .env
APPLICATION_ID=xxx
API_KEY=xxx
4,新建config.json放在跟目录
json
{
"index_name": "blog",
"start_urls": ["https://ylw1997.github.io/"],
"stop_urls": [],
"selectors": {
"lvl0": {
"selector": "",
"global": true,
"default_value": "Documentation"
},
"lvl1": ".content h1",
"lvl2": ".content h2",
"lvl3": ".content h3",
"lvl4": ".content h4",
"lvl5": ".content h5",
"text": ".content p, .content li"
}
}
4,运行docker
WARNING
使用powershell或者cmd运行如果报错,使用git bash运行(命令行前面加winpty)
官网命令
shell
docker run -it --env-file=.env -e "CONFIG=$(cat /path/to/your/config.json | jq -r tostring)" algolia/docsearch-scraper
windows命令
shell
docker run -it --env-file=.env -e "CONFIG=$(cat ./config.json | ./jq -r tostring)" algolia/docsearch-scraper
git bash命令
shell
winpty docker run -it --env-file=.env -e "CONFIG=$(cat ./config.json | ./jq -r tostring)" algolia/docsearch-scraper
查看数据
登录自己账号查看数据
获取appid和key
登录自己账号 https://www.algolia.com/
进入以下地址 https://www.algolia.com/account/api-keys/all
查看自己的appid和key
vitepress集成algolia搜索
在config.ts 中配置
typescript
export default {
...
themeConfig:{
siteTitle:' blog',
logo:'/logo-sm.png',
nav,
sidebar,
algolia:{
indexName: 'xxx',
appId: 'xxx',
apiKey: 'xxx',
searchPagePath: false,
contextualSearch: false,
searchParameters: {}
}
}
...
}