搜索引擎优化好学吗(傻瓜一词借鉴自傻瓜相机,又称轻便相机、全自动相机(组图))

优采云 发布时间: 2021-12-16 14:06

  搜索引擎优化好学吗(傻瓜一词借鉴自傻瓜相机,又称轻便相机、全自动相机(组图))

  傻瓜一词是从傻瓜相机借来的,也称为*敏*感*词*相机和全自动相机,通常是指操作简单,专为普通人设计的小型全自动相机。

  

  在 HelloGitHub 上查找有趣的入门级开源项目。大家好。我是一个苦涩的人。说到搜索,首先想到的应该是大名鼎鼎的Elasticsearch,但是ES对于个人项目来说有点重。

  今天给大家带来一款人人都能用的轻量级开源傻瓜搜索引擎-美力搜索

  

  在介绍MeiliSearch之前,我想谈谈我是如何发现它并喜欢它的。

  我的要求不高

  我开发的HelloGitHub小程序:支持关键词搜索以往月刊中的开源项目。

  

  小程序的搜索功能是用 Rust 编写的开源搜索引擎 Sonic。虽然搜索速度很快,但是在使用过程中发现:

  这些问题直接影响了搜索体验,让我在看搜索相关知识的同时,也在寻找新的开源解决方案的时候非常困扰。想找一个:

  简单部署+配置,支持中文分词,搜索速度快,轻量级开源搜索引擎项目。

  俗称:中国傻瓜搜索引擎。

  它有一个美丽的名字

  

  它有一个“Meili”名称“MeiliSearch”。它也是一个用 Rust 编写的开源搜索引擎。它支持:

  

  概述特点:搜索速度快,全文搜索,支持汉字,安装维护方便,这不正是我要找的:傻瓜式中文搜索引擎吗?

  我已经很想尝试了,我也没什么好说的!

  简单的开始

  终于纸上谈兵了,还得动手试试效果。

  1、安装和启动

  Linux & Mac OS 的一键安装和启动命令:

  卷曲-L | sh./meilisearch

  这样安装就足以让傻瓜成功启动,如下图:

  

  用浏览器访问:127.0.0.1:7700/ 可以看到美力搜索提供的网页搜索页面。我提前写了一些数据来演示搜索:

  

  2、基本操作

  MeiliSearch 是一种搜索服务,它提供了更加通用的 RESTful API 通信协议。官方提供多种编程语言的客户端:

  下面的演示将以 Python 代码为例,安装 Python SDK:

  # 需要 Python3.6+

  pip3/pip 安装 meilisearch

  使用Python实现连接、写入、查询、删除等基本操作:

  

  至此,搜索的最基本功能已经实现,但探索并不止于此。

  3、优化搜索性能

  美丽搜索可以通过配置规则来改善搜索结果:

  可以使用Python客户端更新MeiliSearch配置,示例代码:

  

  这些设置可以有效提高搜索效果。比如在使用停用词之前,搜索“开源书籍”不会命中“开源书籍”,可以通过添加停用词来命中,因为匹配时会忽略输入内容中收录的停用词(无用字)。

  说到我遇到的一个坑,我测试搜索效果的时候发现:go找不到,但是golang可以搜索。查了半天,终于发现是因为go在上面的停用词词典里。

  另外在功能上和sonic相比没有词联想(suggest),可以通过创建index+searchableAttributes来实现。

  我没有找到同义词集合。如果你有现成的汉英同义词词典,请留言告诉我~谢谢

  4、部署

  MeiliSearch 部署非常简单,只需在系统中添加 systemd 服务即可。

  

  但是,在部署正式环境时,需要注意以下几点:

  生产环境必须设置密码,开发环境不强制。生产环境的网页将被关闭。没有远程访问和权限控制。可以使用Nginx实现IP白名单+Cerbot实现HTTPS,提高安全性,通过curl地址查看服务状态

  以上是我使用MeiliSearch的一些经验,以及给我的整体感受:

  一个命令可以启动搜索服务,一行代码实现搜索功能。有了它,我的搜索新手可以分分钟实现一个搜索服务,舒服~

  爱之水晶(实战)

  我用MeiliSearch重写了HelloGitHub小程序的搜索功能,以及后端使用的FastAPI框架。此外,还添加了一些新功能:

  热门搜索词,项目详情页,项目镜像地址,提高访问速度,新界面

  HelloGitHub小程序第二版如下:

  

  后面的计划补充:信息流,评论,评分,用户系统,积分系统,因为我只是开发,所以进度会很慢......但我不会半途而废

  最后

  如果MeiliSearch存在不足,我认为搜索准确度有待提高。一方面需要学习一些分词和NLP的知识,另一方面需要熟悉它的API和原理,然后找一些词典辅助。应该可以提高准确度,但是不能急着吃热豆腐。慢慢来。

  最后希望这篇文章的分享对大家有所帮助,今天的文章就到这里。

  优秀的开源项目就像散落在沙滩上的优采云,需要人们去寻找。

  HelloGitHub 是一个 shell 选择器,找到开源项目就来 HelloGitHub 吧!

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线