用QT寫一個搜尋引擎思路

2puT發表於2016-07-20

首先通過http協議向某個入口網站傳送請求,然後對方伺服器發回我所需的html頁面,然後通過分析提取它中間的關鍵字,URL,還有內容,接著建立資料庫通過存入資料庫後使用者輸入關鍵字找到相關的詞條返回URL,內容還有超連結(大概是這樣講的),現在我想通過試驗比如一個門戶“新浪”來實現一下,具體爬蟲(如果有現成的,先用下他的程式碼)怎麼放,還有具體的步驟(再細劃分)不是太清楚。

你用的是qt,那麼web介面就省了,介面上拖一個框,輸入搜尋串,回車就出來網頁資訊了。
爬蟲(可以用別人的,把網頁爬下來就行了,忽略掉url等資訊) --> 用正規表示式去提取html中的標題和正文 --> 用字典樹寫個簡單的分詞器(滿足最大正向匹配和逆向匹配足夠了),詞庫可以隨便搜一個 --> 建立倒排索引 --> http://www.ruanyifeng.com/blog/2013/03/tf-idf.html 這篇文章會告訴你怎麼計算關鍵詞權重 --> 。
簡單實現估計程式碼量也就3000以內

搜尋引擎的核心是演算法,Qt與搜尋引擎一點關係都搭不上,不過Qt的網路庫倒是有用。
搜尋引擎簡單實現就是,網路爬蟲,然後索引網頁,儲存在資料庫中,使用者搜尋時候,查詢資料庫,返回查詢的條目。關鍵是如何分析網頁,和查詢匹配的網頁。

相關文章