最新要闻
- 万达信息:公司DIP项目不涉及数字人民币支付
- 焦点速看:男子和路过小朋友对暗号唱挖呀挖:没想到小朋友齐声对唱
- 世界热头条丨男子10万块买8套房 鹤壁房子1000元一套?官方回应
- 焦点要闻:全自动空中列车!数万名人已乘坐比亚迪大王山云巴
- 《王者荣耀》女装定价超千元 网友:不如去抢-环球今头条
- 世界播报:18片双环扇叶:先锋电风扇69元起官方大促抄底(170元券)
- 古润金被警方拘留 古润金_全球快播
- 尚纬股份: 截至3月31日,公司股东总数约为2.4万户-焦点热讯
- 威联通NAS新品TS-466C发布:影音转码升级 插上HDMI线就能看片
- 4年前的GTX 1650荣光犹在!Steam硬件占有率第一
- 安卓亲儿子又翻车 谷歌Pixel 6系列手机耗电bug:续航崩了
- RTX 3060 Ti即将停产:疯狂杀价700元!赔本清库存|快看点
- “永生”干细胞培养肉问世:有望实现人造肉无限量供应
- 长江上的“移动垃圾站” 环球聚焦
- 环球观速讯丨光正眼科(002524.SZ):眼科板块前四个月预算完成率100%以上,年度经营目标有望实现
- 广告太多引众怒:微软被迫删除Win11天气部分推广 焦点快报
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
Python工具箱系列(三十二)
【资料图】
Elasticsearch
Elasticsearch是一个基于Lucene的搜索引擎。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful 的API接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是非常流行的企业级搜索引擎。官方支持的客户端语言包括Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby等。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr,而Solr也是基于Lucene开发的。
Elasticsearch的安装方式有许多,官方也特别希望能够在公有云上部署。本文选择最简单的方式,直接在自己掌握的主机(ip:172.29.30.155)上安装。其安装过程如下所述:
# 这个安装过程也有可能非常慢。wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpgsudo apt-get install apt-transport-httpsecho "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.listsudo apt-get update && sudo apt-get install -y elasticsearch
另一个简单的办法就是直接下载安装包。从官网上下载:
# 在ubuntu bionic目标机的终端下wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.3.2-amd64.debsudo dpkg -i elasticsearch-8.3.2-amd64.deb
这种方式的好处是可以复制deb文件以多个计算机上,从而节省下载时间。需要安装的目标计算机越多,这种方式越合算。
在ubuntu bionic下,可以使用systemd对其进行管理。相关命令如下:
sudo /bin/systemctl daemon-reload# 自动启动sudo /bin/systemctl enable elasticsearch# 启动sudo systemctl start elasticsearch# 查看状态sudo systemctl status elasticsearch# 如果出现错误,可以查看日志。journalctl -fjournalctl -u elasticsearch# 停止sudo systemctl stop elasticsearch# 重置口令,人工指定/usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic -i# 重置口令,自动生成/usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic# 测试之curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic https://localhost:9200curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic https://172.29.30.155:9200
获得的响应类似下列信息:
{ "name" : "dbservers", "cluster_name" : "elasticsearch", "cluster_uuid" : "LFs6cpSHTSqLqbx6lRgkvw", "version" : { "number" : "8.3.2", "build_type" : "deb", "build_hash" : "8b0b1f23fbebecc3c88e4464319dea8989f374fd", "build_date" : "2022-07-06T15:15:15.901688194Z", "build_snapshot" : false, "lucene_version" : "9.2.0", "minimum_wire_compatibility_version" : "7.17.0", "minimum_index_compatibility_version" : "7.0.0" }, "tagline" : "You Know, for Search"}
Elasticsearch的功能非常复杂,需要下功夫学习,本文只从python的角度来使用这个工具。官方推荐的模块安装如下:
pip install elasticsearch# 为了能够完成安全验证,需要下载相关的证书到本地scp root@172.29.30.155:/etc/elasticsearch/certs/http_ca.crt .
完成后,以下代码简单示例了如何插入记录:
from elasticsearch import Elasticsearchfrom datetime import datetimeserverip = "172.29.30.155"cafile = r"d:\http_ca.crt"ELASTIC_PASSWORD = "88488848"indexname = "poetry"index = 0def connect(): client = Elasticsearch( f"https://{serverip}:9200", ca_certs=cafile, basic_auth=("elastic", ELASTIC_PASSWORD)) return clientdef docgen(author, content): doc = {"author": author, "text": content, "timestamp": datetime.now(), } return docdef insert(con, id, doc): resp = con.index(index=indexname, id=id, document=doc) return resp["result"]def getbyindex(con, id): resp = con.get(index=indexname, id=id) return resp["_source"]def list(con): resp = con.search(index=indexname, query={"match_all": {}}) print("Got %d Hits:" % resp["hits"]["total"]["value"]) for hit in resp["hits"]["hits"]: print("%(timestamp)s %(author)s: %(text)s" % hit["_source"])def search(con, str): resp = con.search(index=indexname, query={"match": {"text": str}}) print("Got %d Hits:" % resp["hits"]["total"]["value"]) for hit in resp["hits"]["hits"]: print("%(timestamp)s %(author)s: %(text)s" % hit["_source"])# 连接con = connect()# 插入记录index += 1doc = docgen("李白", "天生我才必有用")print(insert(con, index, doc))index += 1doc = docgen("杜甫", "功盖三分国,名成八阵图,江流石不转,遗恨失吞吴")print(insert(con, index, doc))# 准确获得记录print(getbyindex(con, 1))# 列出所有记录list(con)# 使用搜索功能,找到相关记录search(con, "天生")
上述代码只是简单地插入了2条记录。真正要发挥作用搜索引擎的能力,必须要将大量的信息导入,同时也要建设集群系统,这部分的内容请阅读官网相关资料,本文不再重复。
关键词:
-
axios CancelToken 实现对特定请求的拦截,不要所有请求都进行相同的拦截
前言一旦给axios添加了拦截器,就会对所有的post、get等请求进行拦截。但不是所有的请求都需要进行拦截,如
来源: Python工具箱系列(三十二)
Linux-LVM的介绍、创建、删除-世界微动态
世界头条:AI低代码,或将再次颠覆开发行业
axios CancelToken 实现对特定请求的拦截,不要所有请求都进行相同的拦截
环球观察:【新华财经调查】碳酸锂拍卖“试探”市场预期 价格何时回归理性?
今热点:【金融街发布】外汇局:4月银行结汇1869亿美元 售汇1815亿美元
万达信息:公司DIP项目不涉及数字人民币支付
焦点速看:男子和路过小朋友对暗号唱挖呀挖:没想到小朋友齐声对唱
世界热头条丨男子10万块买8套房 鹤壁房子1000元一套?官方回应
焦点要闻:全自动空中列车!数万名人已乘坐比亚迪大王山云巴
《王者荣耀》女装定价超千元 网友:不如去抢-环球今头条
世界播报:18片双环扇叶:先锋电风扇69元起官方大促抄底(170元券)
古润金被警方拘留 古润金_全球快播
【jmeter】win10部署jmeter分布式 全球最资讯
最新快讯!针对基于智能卡进行认证的活动目录攻击
Lua 备忘清单_开发速查表分享
vue 基于原生动画的自动滚动表格
【BSP视频教程】BSP视频教程第26期:CAN/CANFD/CANopen专题,CANFD整个运行机制精讲,图文并茂,配合综合实战演练(2023-05-15)
全球新消息丨上交所将召开沪市金融业专题座谈会 讨论促进金融业估值提升
【世界时快讯】收评:沪指午后逆转涨1.17%收复3300点 新能源赛道股大涨
尚纬股份: 截至3月31日,公司股东总数约为2.4万户-焦点热讯
威联通NAS新品TS-466C发布:影音转码升级 插上HDMI线就能看片
4年前的GTX 1650荣光犹在!Steam硬件占有率第一
安卓亲儿子又翻车 谷歌Pixel 6系列手机耗电bug:续航崩了
RTX 3060 Ti即将停产:疯狂杀价700元!赔本清库存|快看点
“永生”干细胞培养肉问世:有望实现人造肉无限量供应
长江上的“移动垃圾站” 环球聚焦
全球热点评!问鼎CodeXGLUE榜单,华为云UniXcoder-VESO-v1算法取得突破
天天热点评!湖北省智能科教研究会走进璞华,调研璞公英教学平台个性化教学新模式
环球观速讯丨光正眼科(002524.SZ):眼科板块前四个月预算完成率100%以上,年度经营目标有望实现
广告太多引众怒:微软被迫删除Win11天气部分推广 焦点快报
顾客买肉饼咬下去发现全是活虫:商家赔了10块钱_世界动态
Win10成绝唱!微软开始催更:给用户狂弹窗 快点升级Windows 11
全球今日报丨看齐Ultra!小米14 Pro曝光:长焦影像大升级
一盒尝鲜也包邮!春光一口鲜气0糖椰汁大促:券后每瓶9块9
Linux-RAID类型介绍、创建、彻底删除_天天快报
在ASP.NET Core中轻松使用JwtBeare进行身份验证
Golang基础教程
Mongodb 以及 node.js中使用mongoose操作数据库
每日看点!MYSQL数据库之事务隔离级别详解
损失条款
不喜欢别看!网飞黑人《埃及艳后》史诗级翻车 差评多到不忍直视
年度大改款!联发科下一代旗舰命名确认:天玑9300_焦点热门
骨灰级程序员 20多年经验IT大牛左耳朵耗子陈皓突发心梗去世 享年47岁-世界简讯
特斯拉中国召回110万辆:是真心 还是假意?
今热点:硬挑苹果!华为赚麻:增加万元折叠新机Mate X3订单 出货量或将翻倍
世界热文:白酒板块午盘走弱 贵州茅台股价下滑0.22%
接单日记(四)验证码图片生成|全球今头条
日系“药丸”?日产发布2022财年业绩:收益远超预期|热推荐
环球头条:卢伟冰揭秘Redmi Book 14:4000元档四大升级 厂商良心所在
地铁咋调头 有司机吗?看完本文你比地铁司机还懂
亚洲或将面临超级高温“烤”验:多国已破40℃ 厄尔尼诺现象要来了-环球热文
联想拯救者Y9000P冰魄白游戏本开卖 24核i9+RTX 4070仅售12499元 当前头条
俄媒:一天之内数架俄军机在俄乌边境坠毁 即时
Stimulsoft Report/Group Report报表类型简单实现|每日头条
系统错误:找不到mvcp120d.dll,无法继续执行代码
天天快播:ntp时钟服务器(ntp授时服务器)技术参数一览表
焦点短讯!宝兰德应用服务器软件与华为云GaussDB完成兼容互认证
顶象助力如祺出行打造高品质服务
全球快看:北向互换通正式上线
世界短讯!萍乡一男子利用职务便利侵占公司财物获刑
独悬变扭力梁、气囊也减配 新款丰田卡罗拉上市定档:价格或史低 当前热文
对标苹果iPad Air!华为MatePad Air真机首曝:LCD屏、骁龙888|世界新消息
全球今亮点!6月9日上映!《变形金刚7:超能勇士崛起》中文海报/角色介绍发布
110万的仰望U8领衔!多款硬派SUV申报:奇瑞这款最值得期待
超强辨识度!比亚迪腾势N7夜晚亮灯实拍:“世界级SUV”感受下 焦点热议
全球快资讯丨2023宁波技工学校新设置专业有哪些
每日热文:Grafana系列-统一展示-10-Explore Jaeger
环球微速讯:江南华南北部多降雨过程 华北黄淮等地将有高温过程
德意志银行顺利完成“互换通”下首笔交易
定档5月22日 Redmi Book 14官宣:重新定义4000元档轻薄本|天天热闻
特斯拉幕后舵手曝光 他是马斯克接班人?
热热热!北方将刷新今年来气温新高:首轮高温局地超37℃_精选
焦点信息:网飞黑人《埃及艳后》IMDb仅1.1分 近3万人给出1分
1TB只要2599元 真我11 Pro系列首销战报来了:销量破8万台 速讯
世界速看:河南太康清集镇:扎实做好防返贫动态监测帮扶工作
20230515学习笔记——js中的同步任务与异步任务,宏任务与微任务
世界快报:序列检测器(两种设计方法和四种检测模式|verilog代码|Testbench|仿真结果)
天天热资讯!Linux文件查找命令之locate与find
从3s到25ms!看看京东的接口优化技巧,确实很优雅!! 当前速递
碳酸锂市价止跌急涨 需求兑现仍需时日 全球速递
全球焦点!伯利时代首冠切尔西女足主帅:男队表现不佳,冠军献给球迷
售价10万以内 “电动吉姆尼”宝骏悦也内饰官图:小车也有双联屏
天天快消息!肉丸、鸡架超满足:东北抚顺麻辣拌6.6元/盒清仓大促
AI孙燕姿大火!央视提醒:AI歌手翻唱或涉多项侵权行为
环球新动态:断轴!韩系豪华车捷尼赛思GV60上市两个月就召回
罕见!北方今年首轮高温来袭:山东要热成灿东了 局地39度 天天快播
java~"与运算"实现保留一个数的低8位 速看
一键斩断伸向孩子的“黑手” 36名未成年人被救助-精选
提速至140km/h!浙江最快高速公路来了:杭州到宁波仅1小时
就像买菜!男子花10万块买了8套房 最便宜一套1000元:网友感慨 天天滚动
遥遥领先苹果!余承东:华为WATCH4系列首发血糖评估 环球速看料
全国最大高铁“驾校”揭秘:16台模拟驾驶实训舱 如同开真高铁
全球热门:假把式!小区监控探头是粘上的,限期整改!
两类存款利率加点上限调整今起执行 部分中小银行迅速行动
你手机装了几款APP?人均安装31个APP 年龄越小装的越多
摊主再回应买彩票中2574万 21人合买有钱一起赚:买一股能分百万 都分到钱
没人看了?美国付费有线电视用户跌至30年最低
如何使用多米诺骨牌作为派对主题_什么生日礼物送学生朋友最合适男生 世界简讯
读SQL进阶教程笔记16_SQL优化让SQL飞起来