最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用python+whoosh實(shí)現(xiàn)全文檢索

 更新時(shí)間:2019年12月09日 09:34:41   作者:倚樓灬風(fēng)細(xì)  
今天小編就為大家分享一篇使用python+whoosh實(shí)現(xiàn)全文檢索,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

whoosh的官方介紹:http://whoosh.readthedocs.io/en/latest/quickstart.html

因?yàn)樽龅氖侵形牡娜臋z索需要導(dǎo)入jieba工具包以及whoosh工具包

直接上代碼吧

from whoosh.qparser import QueryParser 
from whoosh.index import create_in 
from whoosh.index import open_dir 
from whoosh.fields import * 
from jieba.analyse import ChineseAnalyzer 
from get_comment import SQL 
from whoosh.sorting import FieldFacet 
 
analyser = ChineseAnalyzer()  #導(dǎo)入中文分詞工具 
schema = Schema(phone_name=TEXT(stored=True, analyzer=analyser), price=NUMERIC(stored=True), 
          phoneid=ID(stored=True))# 創(chuàng)建索引結(jié)構(gòu) 
ix = create_in("path", schema=schema, indexname='indexname') #path 為索引創(chuàng)建的地址,indexname為索引名稱 
writer = ix.writer() 
writer.add_document(phone_name='name',price ="price",phoneid ="id") # 此處為添加的內(nèi)容  
print("建立完成一個(gè)索引") 
writer.commit() 
# 以上為建立索引的過(guò)程 
new_list = [] 
index = open_dir("indexpath", indexname='comment') #讀取建立好的索引 
with index.searcher() as searcher: 
  parser = QueryParser("要搜索的項(xiàng)目,比如“phone_name", index.schema) 
  myquery = parser.parse("搜索的關(guān)鍵字") 
  facet = FieldFacet("price", reverse=True) #按序排列搜索結(jié)果 
  results = searcher.search(myquery, limit=None, sortedby=facet) #limit為搜索結(jié)果的限制,默認(rèn)為10,詳見博客開頭的官方文檔 
  for result1 in results: 
    print(dict(result1)) 
    new_list.append(dict(result1))

注:

Whoosh 有一些很有用的預(yù)定義 field types,你也可以很easy的創(chuàng)建你自己的。

whoosh.fields.ID

這個(gè)類型簡(jiǎn)單地將field的值索引為一個(gè)獨(dú)立單元(這意味著,他不被分成單獨(dú)的單詞)。這對(duì)于文件路徑、URL、時(shí)間、類別等f(wàn)ield很有益處。

whoosh.fields.STORED

這個(gè)類型和文檔存儲(chǔ)在一起,但沒(méi)有被索引。這個(gè)field type不可搜索。這對(duì)于你想在搜索結(jié)果中展示給用戶的文檔信息很有用。

whoosh.fields.KEYWORD

這個(gè)類型針對(duì)于空格或逗號(hào)間隔的關(guān)鍵詞設(shè)計(jì)。可索引可搜索(部分存儲(chǔ))。為減少空間,不支持短語(yǔ)搜索。

whoosh.fields.TEXT

這個(gè)類型針對(duì)文檔主體。存儲(chǔ)文本及term的位置以允許短語(yǔ)搜索。

whoosh.fields.NUMERIC

這個(gè)類型專為數(shù)字設(shè)計(jì),你可以存儲(chǔ)整數(shù)或浮點(diǎn)數(shù)。

whoosh.fields.BOOLEAN

這個(gè)類型存儲(chǔ)bool型

whoosh.fields.DATETIME

這個(gè)類型為 datetime object而設(shè)計(jì)(更多詳細(xì)信息)

whoosh.fields.NGRAM 和 whoosh.fields.NGRAMWORDS

這些類型將fiel文本和單獨(dú)的term分成N-grams(更多Indexing & Searching N-grams的信息)

以上這篇使用python+whoosh實(shí)現(xiàn)全文檢索就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python中asyncore異步模塊的用法及實(shí)現(xiàn)httpclient的實(shí)例

    Python中asyncore異步模塊的用法及實(shí)現(xiàn)httpclient的實(shí)例

    asyncore即是一個(gè)異步的socket封裝,特別是dispatcher類中包含了很多異步調(diào)用的socket操作方法,非常犀利,下面我們就來(lái)講解Python中asyncore異步模塊的用法及實(shí)現(xiàn)httpclient的實(shí)例
    2016-06-06
  • python中os.stat().st_size、os.path.getsize()獲取文件大小

    python中os.stat().st_size、os.path.getsize()獲取文件大小

    本文介紹了使用os.stat()和os.path.getsize()函數(shù)獲取文件大小,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • Python中DataFrame轉(zhuǎn)列表的最全指南

    Python中DataFrame轉(zhuǎn)列表的最全指南

    在Python數(shù)據(jù)分析中,Pandas的DataFrame是最常用的數(shù)據(jù)結(jié)構(gòu)之一,本文將為你詳解5種主流DataFrame轉(zhuǎn)換為列表的方法,大家可以根據(jù)需求進(jìn)行選擇
    2025-03-03
  • python中str內(nèi)置函數(shù)用法總結(jié)

    python中str內(nèi)置函數(shù)用法總結(jié)

    在本篇文章里小編給大家整理了一篇關(guān)于python中str內(nèi)置函數(shù)用法總結(jié)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。
    2020-12-12
  • python Canny邊緣檢測(cè)算法的實(shí)現(xiàn)

    python Canny邊緣檢測(cè)算法的實(shí)現(xiàn)

    這篇文章主要介紹了python Canny邊緣檢測(cè)算法的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • python plotly畫柱狀圖代碼實(shí)例

    python plotly畫柱狀圖代碼實(shí)例

    這篇文章主要介紹了python plotly畫柱狀圖代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • python3從網(wǎng)絡(luò)攝像機(jī)解析mjpeg http流的示例

    python3從網(wǎng)絡(luò)攝像機(jī)解析mjpeg http流的示例

    這篇文章主要介紹了python3從網(wǎng)絡(luò)攝像機(jī)解析mjpeg http流的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-11-11
  • Python?OpenCV超詳細(xì)講解透視變換的實(shí)現(xiàn)

    Python?OpenCV超詳細(xì)講解透視變換的實(shí)現(xiàn)

    OpenCV用C++語(yǔ)言編寫,它具有C?++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac?OS,OpenCV主要傾向于實(shí)時(shí)視覺(jué)應(yīng)用,并在可用時(shí)利用MMX和SSE指令,本篇文章帶你通過(guò)OpenCV實(shí)現(xiàn)透視變換
    2022-04-04
  • python列表使用實(shí)現(xiàn)名字管理系統(tǒng)

    python列表使用實(shí)現(xiàn)名字管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python列表使用實(shí)現(xiàn)名字管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Python繪制頻率分布直方圖的示例

    Python繪制頻率分布直方圖的示例

    今天小編就為大家分享一篇Python繪制頻率分布直方圖的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07

最新評(píng)論

阿荣旗| 大方县| 称多县| 盐津县| 喜德县| 洞头县| 浦城县| 宜州市| 青川县| 容城县| 绥滨县| 远安县| 夏河县| 林芝县| 舟曲县| 左云县| 平原县| 昌都县| 嘉峪关市| 西丰县| 定南县| 平果县| 花垣县| 湖北省| 华宁县| 安康市| 麦盖提县| 鄂托克前旗| 武夷山市| 烟台市| 论坛| 北辰区| 四川省| 清丰县| 兴宁市| 安徽省| 蚌埠市| 武功县| 固始县| 漳浦县| 龙胜|