日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

pylucene构建索引_pyLucene

發(fā)布時間:2025/3/19 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pylucene构建索引_pyLucene 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

http://blog.csdn.net/kernelspirit/archive/2008/02/28/2127851.aspx

PyLucene安裝及使用

PyLucene是Python對搜索引擎Lucene?的封裝,可以通過Python方便的調(diào)用Lucene的API。Lucene是全文搜索的模塊,可以很方便的嵌入到應(yīng)用程序中。對于Python的應(yīng)用程序可以通過PyLucene是程序具備全文搜索的能力。

安裝

下載后解壓。

拷貝解壓目錄下Python目錄中的文件到C:\Python25\Lib\site-packages下,即可完成安裝。

例子

解壓目錄下有samples例子,可以直接運(yùn)行IndexFiles.py文件建立索引:

python IndexFiles.py c:/

會在IndexFiles.py同目錄下建立Index目錄存放建立的索引,上面的命令會把C:盤所有的.txt文件內(nèi)容進(jìn)行索引,如果想索引其他類型的文件,修改源代碼即可。

運(yùn)行解壓目錄下的SearchFiles.py進(jìn)行查詢:

python SearchFiles.py

然后輸入文件中的任意單詞或漢字都可以查詢得到。

http://www.unfish.net/archives/271-20080118.html

PyLucene安裝使用簡介

星期五, 一月 18. 2008

想給理財易的留言板添加個搜索功能,但是又不想用like這樣的搜索語句,慢的要死,搞不好還會成為網(wǎng)站被攻擊的漏洞,但是Mysql又不支持中文的全文檢索,只支持英文。(似乎最新版的Mysql 6已經(jīng)可以很方便的用插件方式添加中文全文檢索了,而且似乎已經(jīng)有人把這個插件做出來了。)以前記得海量是出過修改版的支持中文全文檢索的Mysql的,于是跑去下載了看看,結(jié)果發(fā)現(xiàn)最新的版本好像也是2005年出的了,以后再也沒有出過。想來想去,還是用Lucene這樣的獨(dú)立的全文檢索方式吧。

PyLucene 以前就曾經(jīng)下載測試過,但是一直沒有實際的使用,今天再看,還是遇到不少問題。它的下載里面有源碼也有二進(jìn)制文件,源碼的編譯似乎非常的麻煩,一種方式是需要Java和Ant,另一種是需要Gcj,而且還需要自己修改Makefile文件,修改N多參數(shù)。二進(jìn)制文件里面提供了許多個版本的下載,因為開發(fā)環(huán)境是Ubuntu的,所以就下載了Ubuntu 7.04對應(yīng)的二進(jìn)制文件,解壓看了說明,簡單的很,把Python的幾個文件復(fù)制到Python的site-packages目錄,把gcj的兩個文件復(fù)制到/usr/local/lib目錄,然后進(jìn)入tests目錄運(yùn)行一下測試,成功了,相當(dāng)簡單。

然后就開始寫生成索引和檢索的代碼了。這些代碼跟Java的Lucene是完全一致的,因為PyLucene只是起一個包裝的作用,最終還是調(diào)用的Lucene。具體的代碼就不放在這里了。

代碼寫完了傳到服務(wù)器上,結(jié)果不能執(zhí)行,對了,服務(wù)器上還沒有安裝PyLucene呢。因為服務(wù)器是CentOS 4的,網(wǎng)站并沒有提供對應(yīng)的二進(jìn)制文件下載,于是嘗試使用源碼編譯,結(jié)果把兩個版本的源碼都下載下來了,一看Readme就暈了,有必要搞這么復(fù)雜嗎?對應(yīng)CentOS有個鏈接,過去看了下是提供了個source rpm文件,下載安裝后進(jìn)去卻發(fā)現(xiàn)是兩個壓縮文件,分別是Java Lucene的和PyLucene的,但是卻沒有提供安裝說明,看了半天還是摸不著門道。最后還是決定使用Ubuntu的這個,畢業(yè)都是針對gcj的,而且服務(wù)器上已經(jīng)安裝了gcj了,相關(guān)的庫應(yīng)該都不缺。

復(fù)制了對應(yīng)的文件以后運(yùn)行測試代碼,結(jié)果卻提示undefined symbol: PyUnicodeUCS4_FromUnicode這樣一個錯誤。Google了一下發(fā)現(xiàn)不只是PyLucene的問題,似乎是編譯Python的時候所使用的Unicode參數(shù)和該程序里面所調(diào)用的函數(shù)不一致。沒辦法,重新下載了Python 2.5.1的源碼進(jìn)行編譯,加上了--enable-unicode=ucs4參數(shù),再運(yùn)行測試代碼,OK,一切正常了。運(yùn)行一下網(wǎng)站,功能也沒有問題,對中文支持也非常好。

總結(jié)

以上是生活随笔為你收集整理的pylucene构建索引_pyLucene的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。