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

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

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

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

因為做的是中文的全文檢索需要導(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("建立完成一個索引") 
writer.commit() 
# 以上為建立索引的過程 
new_list = [] 
index = open_dir("indexpath", indexname='comment') #讀取建立好的索引 
with index.searcher() as searcher: 
  parser = QueryParser("要搜索的項目,比如“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

這個類型簡單地將field的值索引為一個獨立單元(這意味著,他不被分成單獨的單詞)。這對于文件路徑、URL、時間、類別等field很有益處。

whoosh.fields.STORED

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

whoosh.fields.KEYWORD

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

whoosh.fields.TEXT

這個類型針對文檔主體。存儲文本及term的位置以允許短語搜索。

whoosh.fields.NUMERIC

這個類型專為數(shù)字設(shè)計,你可以存儲整數(shù)或浮點數(shù)。

whoosh.fields.BOOLEAN

這個類型存儲bool型

whoosh.fields.DATETIME

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

whoosh.fields.NGRAM 和 whoosh.fields.NGRAMWORDS

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

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

相關(guān)文章

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

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

    asyncore即是一個異步的socket封裝,特別是dispatcher類中包含了很多異步調(diào)用的socket操作方法,非常犀利,下面我們就來講解Python中asyncore異步模塊的用法及實現(xiàn)httpclient的實例
    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ù)獲取文件大小,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(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邊緣檢測算法的實現(xiàn)

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

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

    python plotly畫柱狀圖代碼實例

    這篇文章主要介紹了python plotly畫柱狀圖代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    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ì)講解透視變換的實現(xiàn)

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

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

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

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

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

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

最新評論

额济纳旗| 天长市| 青岛市| 丽江市| 昌黎县| 太原市| 景德镇市| 松阳县| 永吉县| 仪征市| 读书| 乐都县| 武定县| 清河县| 陵川县| 靖安县| 谢通门县| 邳州市| 翁牛特旗| 保德县| 岑溪市| 且末县| 黄陵县| 万盛区| 苏尼特左旗| 长岭县| 南通市| 河北区| 丹凤县| 彭州市| 广安市| 股票| 忻城县| 七台河市| 张掖市| 卢龙县| 福建省| 安徽省| 宜兰县| 东阳市| 土默特左旗|