首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHP使用elasticsearch搜索安装及分词方法

然后我就想着做一个分词搜索起来会方便不少,第一个想到的就是ES搜索了。 怎么去用ES呢?...因为我们PHP如果调用ES搜索的接口,我们是需要去下载一个类库。 1....安装依赖 php composer.phar install 第四步 安装分词插件 就是说我们需要安装一个分词插件。 在ES搜索当中Ik分词插件是中文分词最好用的一个,安装也极为方便。...第五步 导入数据 现在说一下怎么把数据库中的数据导入到ES中, 首先需要建立这样一个库, 然后把数据按照固定的格式插入到ES搜索中。下面是我的一个代码示例 <?php require_once '....php //引入mysql连接,和ES类库 require('conn.php'); require_once 'vendor/autoload.php'; function search($keyword

1.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

WordPress 中文分词搜索

上图是改进之后的搜索效果,wordpress的搜索按照网上的说法做的比较烂,貌似是全字段匹配,于是搜索上面的关键词”ida调试器”就出现了下面的状况,啥都没有: 虽然blog的访问量不大,但是作为一个强迫症患者...python下的结巴分词相对来说使用还是比较方便的,搜了一下发现还真有个jieba的php版本https://github.com/jonnywang/phpjieba。...那就简单了,首先安装结巴分词,按照github上的指导进行安装结课,不过安装过程中可能会遇到如下的错误: configure: error: Cannot find php-config....到这里第一步就成功了,下面进行第二部,修改搜索相关代码。...article/1570.html ☆文章版权声明☆ * 网站名称:obaby@mars * 网址:https://h4ck.org.cn/ * 本文标题: 《WordPress 中文分词搜索

69130

Sphinx + Coreseek 实现中文分词搜索

Sphinx + Coreseek 实现中文分词搜索 Sphinx Coreseek 实现中文分词搜索 全文检索 1 全文检索 vs 数据库 2 中文检索 vs 汉化检索 3 自建全文搜索与使用Google...汉化检索 全文检索一般支持中文分词。而往往有人觉得将现有的不支持中文分词的全文检索软件添加中文分词模块就能够使用了。这个观点本身没错,可是能够使用不代表能够用好。...国内有大量的站点採用Lucene+中文分词的解决方式,可是搜索结果并不乐观。 中文全文检索绝不是简单的将国外的全文检索软件包添加中文分词模块(汉化的全文检索)。...如PHP,Python,Perl,Ruby等,因此你能够在大部分编程应用中非常方便地调用Sphinx的相关接口。 为MySQL设计了一个存储引擎插件。因此假设你在MySQL上使用Sphinx。...PHP接口的測试例如以下: //注意文件的编码格式须要保存为为UTF-8格式 require ( "sphinxapi.php" ); $cl = new SphinxClient (); $cl->

1.2K20

全文搜索实战2-ik分词搜索高亮

本文通过在es中安装ik分词插件,并基于jsoup解析某网站内容并存储到mysql和es中,实现了一个完整的关键词全文搜索并高亮展示功能 实现效果预览 通过输入中国 鲁能 关键词,即可得到如下图的结果:...[全文搜索结果高亮示意] ik分词插件安装及测试 首先,借助ik分词插件改善中文搜索: 鉴于github直接下载很慢,根据官网说明,采用下来离线包解压安装的模式 将下载得到的 elasticsearch-analysis-ik...-H 'Content-Type:application/json' -d' {"content":"中国驻洛杉矶领事馆遭亚裔男子枪击 嫌犯已自首"} ' 完成数据条件之后,即可通过如下的调用来查看分词查询结果...# 分词查询测试 curl -XPOST http://localhost:9200/iktest/_search?...模糊搜索服务实现 该服务主要实现: 因为要同时搜索title和detailText,因此采用multiMatchQuery模式。 通过HighlightBuilder类,构建搜索结果高亮逻辑。

1.6K00

PHPCMS关闭搜索关键字分词功能

PHPCMS的搜索功能相比其他CMS算是比较差的了,搜索精度非常低。虽说他有个搜索关键字分词功能,但有点时候不分词的准确度却会高于分词。 如何去掉PHPCMS关闭搜索关键字分词功能?...用记事本打开 phpcmsmodulessearchindex.php 大概在78行能够找到下面的代码 $segment_q = $segment->get_keyword($segment->split_result...($q)); 注释掉这行代码就能取消分词功能。...网上搜集了些资料,用的是其他办法,我没尝试过,仅作为记录 第一个文件: phpcmsmodulessearchindex.php //如果分词结果为空 if(!...$datatest=array();//2014.1.13 by: mosell 用于显示搜索结果列表 $datatest=$data;//2014.1.13 by: mosell 用于显示搜索结果列

3.3K40

CentOS Nginx php 安装中文分词SCWS扩展

在网上做了一点功课,meta中的 description比较关键,keywords据说已经不再受搜索引擎的关照了,不过这种事情现在不能盲目相信,既然做一个网站那么还是应该要照顾好关键词。...但是没必要付出过高的人力成本,所以我这里想到的还是使用分词扩展来自动生成关键词。 这样做的好处是,无论搜索引擎是否在意关键词,我们有和内容相关度很高的关键词,这不会对我们带来损失。...我这里选用的是对php支持比较好的 SCWS分词扩展。 如果分词的目的是更多的语义化分析、情感分析等,那还是应该考虑一下其他的分词库,不过基本上没有php支持。...进入正题 SCWS中文分词下载 SCWS安装说明 从官网上有详细的安装指导,我这里做一下简单的整理 (基于习惯选择UTF8) 1....=$php_prefix/bin/php-config # 经测试出现问题时 这样做没有用,解决方案 找到实际使用的php安装目录 # 使用 whereis php , which php 查找,如果还找不到

64120

Django实现whoosh搜索引擎使用jieba分词

本文介绍了Django实现whoosh搜索引擎使用jieba分词,分享给大家,具体如下: Django版本:3.0.4 python包准备: pip install django-haystack pip...install jieba 使用jieba分词 1.cd到site-packages内的haystack包,创建并编辑ChineseAnalyzer.py文件 # (注意:pip安装的是django-haystack...whoosh.analysis import StemmingAnalyzer vim替换命令: %s/StemmingAnalyzer/ChineseAnalyzer/g 4.修改setting.py文件 # 全文搜索框架配置...default': { # 使用whoosh引擎 # 'ENGINE': 'haystack.backends.whoosh_backend.WhooshEngine', # 使用jieba分词...到此这篇关于Django实现whoosh搜索引擎使用jieba分词的文章就介绍到这了,更多相关Django jieba分词内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持

78110

商品搜索引擎—分词(插件介绍与入门实例)

最近刚好在学习搜索引擎分词,有了解一些分词插件,在这里给各位猿友分享一下。...ICTCLAS3.0分词速度单机996KB/s,分词精度98.45%,API不超过200KB,各种词典数据压缩后不到3M,分词正确率高达97.58%(最近的973专家组评测结果),基于角色标注的未登录词识别能取得高于...最初,它是以开源项目Lucene为应用主体的,结合词典分词和文法分析算法的中文分词组件。...3.2012版本的智能分词模式支持简单的分词排歧义处理和数量词合并输出。...六、词库推荐 分词基本都是基于词库实现的,下面博主推荐一个词库,搜狗输入法细胞库,里面词库很全面,而且已经分好类,比如如果是商品搜索引擎,在里面寻找相关词库,有助于提高准确度哦:http://pinyin.sogou.com

70130

PHP 使用 ElasticSearch 做搜索

lasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。...Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。...在做搜索的时候想到了 ElasticSearch ,而且其也支持 PHP,所以就做了一个简单的例子做测试,感觉还不错,做下记录。...环境 php 7.2 elasticsearch 6.2 下载 elasticsearch-php 6 下载 安装 elasticsearch 下载源文件,解压,重新建一个用户,将目录的所属组修改为此用户.../bin/elasticsearch  // 启动 安装 PHP 扩展 我这里使用的是 composer 安装 elasticsearch-php

2.2K20

【迅搜11】搜索技巧(一)简单搜索语句构建及高亮折叠效果

有的时候,为了性能,我们的汇总数据值是可以不精确的。比如说千万条日志中统计出来的实时日活数量,误差在一定范围内都是可以授受的。...包括之前我们学习过的 Redis 中的 HyperLogLog 就明确说了不精确,有多少误差,但是速度飞快,存储空间小。...同样的,对于大部分搜索结果及其分页来说,本身分词就是有着不确定性以及异步索引操作的问题,数量统计也会因此产生不准确的问题。...echo PHP_EOL; echo $search->highlight($doc->content); echo PHP_EOL; //……………… 看出来效果了吧,“数据结构与算法” 通过默认分词实际上是分成了...那么要删除之前的高亮缓存中的分词内容要怎么弄呢?直接用空字符串搜索一次就好啦。

9210

【迅搜11】搜索技巧(一)简单搜索语句构建及高亮折叠效果

有的时候,为了性能,我们的汇总数据值是可以不精确的。比如说千万条日志中统计出来的实时日活数量,误差在一定范围内都是可以授受的。...包括之前我们学习过的 Redis 中的 HyperLogLog 就明确说了不精确,有多少误差,但是速度飞快,存储空间小。...同样的,对于大部分搜索结果及其分页来说,本身分词就是有着不确定性以及异步索引操作的问题,数量统计也会因此产生不准确的问题。...echo PHP_EOL; echo $search->highlight($doc->content); echo PHP_EOL; //……………… 看出来效果了吧,“数据结构与算法” 通过默认分词实际上是分成了...那么要删除之前的高亮缓存中的分词内容要怎么弄呢?直接用空字符串搜索一次就好啦。

8210

新闻网页爬虫+jieba分词+关键词搜索排序

blog.csdn.net/qqxx6661/article/details/90271893 前言 最近做了一个python3作业题目,涉及到: 网页爬虫 网页中文文字提取 建立文字索引 关键词搜索...涉及到的库有: 爬虫库:requests 解析库:xpath 正则:re 分词库:jieba … 放出代码方便大家快速参考,实现一个小demo。...题目描述 搜索引擎的设计与实现 输入:腾讯体育的页面链接,以列表的方式作为输入,数量不定,例如: ["http://fiba.qq.com/a/20190420/001968.htm", "http:/...清理掉多余的英文字符和标签,bs4_page_clean函数 用正则提取中文:re_chinese函数 使用dict保存每个网页的中文字和词,做索引:jieba_create_index函数 输入关键词进行搜索

1.7K20

【腾讯云ES】基于NGram分词ES搜索性能优化实践

例如:使用 match api 时,基于 ik_max_word 分词方式对“白色死神”进行分词后,搜索"白色"、"死神"能搜索到,而根据 "白" 进行搜索时,结果确为空。...,模糊搜索的效率就会越低。...方案二:N-gram 分词生产环境我们可以使用 N-gram 来代替 wildcard 实现模糊搜索功能,N-gram 分词器可以通过指定分词步长来对输入文本进行约束切割,本质上也是一种全文搜索。...使用 wildcard 不需要做分词,不需要额外占用磁盘,但数据量大时搜索性能很差,小规模业务可以使用。2....直接使用 Ngram 分词,单个关键字命中即返回,召回错误率太高,可以搭配使用 match_phrase,通过设定slot偏移量,可以减少智能分词结果差异导致的召回率低的问题,提升搜索准确率。

2.6K40

如何开发自己的搜索帝国之安装ik分词

Elasticsearch默认提供的分词器,会把每个汉字分开,而不是我们想要的根据关键词来分词,我是中国人 不能简单的分成一个个字,我们更希望 “中国人”,“中国”,“我”这样的分词,这样我们就需要安装中文分词插件...elasticsearch-analysis-ik 是一款中文的分词插件,支持自定义词库。   ...现在开始安装ik分词器,安装之前,先说明一些变化: 之前可以在node节点上配置index默认的分词器,如果是多节点,那么在每个节点上都配置就行了。这个有点不灵活,所以。...  目前该插件支持热更新 IK 分词,通过上文在 IK 配置文件中提到的如下配置 <!...该 http 请求返回的内容格式是一行一个分词,换行符用 \n 即可。   满足上面两点要求就可以实现热更新分词了,不需要重启 ES 实例。

1.3K50
领券