用QT寫一個搜尋引擎思路
首先通過http協議向某個入口網站傳送請求,然後對方伺服器發回我所需的html頁面,然後通過分析提取它中間的關鍵字,URL,還有內容,接著建立資料庫通過存入資料庫後使用者輸入關鍵字找到相關的詞條返回URL,內容還有超連結(大概是這樣講的),現在我想通過試驗比如一個門戶“新浪”來實現一下,具體爬蟲(如果有現成的,先用下他的程式碼)怎麼放,還有具體的步驟(再細劃分)不是太清楚。
你用的是qt,那麼web介面就省了,介面上拖一個框,輸入搜尋串,回車就出來網頁資訊了。
爬蟲(可以用別人的,把網頁爬下來就行了,忽略掉url等資訊) --> 用正規表示式去提取html中的標題和正文 --> 用字典樹寫個簡單的分詞器(滿足最大正向匹配和逆向匹配足夠了),詞庫可以隨便搜一個 --> 建立倒排索引 --> http://www.ruanyifeng.com/blog/2013/03/tf-idf.html 這篇文章會告訴你怎麼計算關鍵詞權重 --> 。
簡單實現估計程式碼量也就3000以內
搜尋引擎的核心是演算法,Qt與搜尋引擎一點關係都搭不上,不過Qt的網路庫倒是有用。
搜尋引擎簡單實現就是,網路爬蟲,然後索引網頁,儲存在資料庫中,使用者搜尋時候,查詢資料庫,返回查詢的條目。關鍵是如何分析網頁,和查詢匹配的網頁。
相關文章
- 做一個搜尋引擎的思路
- 用 Golang 寫一個搜尋引擎 (0x04) — B + 樹Golang
- 用 Golang 寫一個搜尋引擎(0x07)--- 正排索引Golang索引
- 用 Golang 寫一個搜尋引擎 (0x04) --- B + 樹Golang
- 用 Golang 寫一個搜尋引擎(0x06)--- 索引構建Golang索引
- 用 Golang 寫一個搜尋引擎(0x08)--- 索引的段Golang索引
- 用 Golang 寫一個搜尋引擎(0x01)--- 基本概念Golang
- 用 Golang 寫一個搜尋引擎 (0x00)--- 從零開始Golang
- 用 Golang 寫一個搜尋引擎(0x02)--- 倒排索引技術Golang索引
- 用 Golang 寫一個搜尋引擎(0x09)— 資料增,刪,改Golang
- 用Golang寫一個搜尋引擎(0x05)--- 文字相關性排序Golang排序
- python 寫的搜尋引擎Python
- 用 Golang 寫一個搜尋引擎(0x03)— 跳躍表,雜湊表Golang
- 用 Golang 寫一個搜尋引擎(0x03)--- 跳躍表,雜湊表Golang
- 用Python實現一個大資料搜尋引擎Python大資料
- 用 Python 實現一個大資料搜尋引擎Python大資料
- 搜尋引擎-03-搜尋引擎原理
- python 寫的搜尋引擎 - 原始碼Python原始碼
- 海量資料搜尋---搜尋引擎
- 嘗試用go寫一個音樂搜尋的包Go
- 5個 Rapidshare 搜尋引擎API
- 給大家分享一個 python 做的搜尋引擎Python
- 搜尋引擎Nutch 0.7.2 試用筆記筆記
- 搜尋引擎es-分詞與搜尋分詞
- ElasticSearch全文搜尋引擎Elasticsearch
- 搜尋引擎語法
- 搜尋引擎命令大全
- 搜尋引擎程式碼
- 搜尋引擎面試題面試題
- 基於 Mysql 實現一個簡易版搜尋引擎MySql
- 實現一個自己的搜尋引擎的初始規劃
- Elasticsearch線上搜尋引擎讀寫核心原理深度認知-搜尋系統線上實戰Elasticsearch
- 9個基於Java的搜尋引擎框架Java框架
- 用elasticsearch和nuxtjs搭建bt搜尋引擎ElasticsearchUXJS
- 搜尋引擎優化(SEO)優化
- 搜尋引擎框架介紹框架
- Django整合搜尋引擎ElasticserachDjangoAST
- 認識搜尋引擎 ElasticsearchElasticsearch