亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于聚焦爬蟲的搜索引擎的設計與實現(xiàn)

        2018-09-21 07:08:28趙建華蔣勁松
        系統(tǒng)仿真技術(shù) 2018年3期
        關鍵詞:爬蟲搜索引擎列表

        趙建華,蔣勁松

        (商洛學院 數(shù)學與計算機應用學院,陜西 商洛 726000)

        隨著網(wǎng)絡的迅速發(fā)展,萬維網(wǎng)成為大量信息的載體,如何有效地提取并利用這些信息成為一個巨大的挑戰(zhàn)。搜索引擎[1-2]是指根據(jù)一定的策略、運用特定的計算機程序從互聯(lián)網(wǎng)上搜集信息,在對信息進行組織和處理后,為用戶提供檢索服務,并將用戶檢索的相關信息展示給用戶的系統(tǒng)。然而,這些通用性搜索引擎也存在著一定的局限性[3-4],如下所示:

        (1)不同領域、不同背景的用戶往往具有不同的檢索目的和需求,通用搜索引擎所返回的結(jié)果包含大量用戶不關心的網(wǎng)頁。

        (2)通用搜索引擎的目標是盡可能大的網(wǎng)絡覆蓋率,有限的搜索引擎服務器資源與無限的網(wǎng)絡數(shù)據(jù)資源之間的矛盾將進一步加深。

        (3)萬維網(wǎng)數(shù)據(jù)形式的豐富以及伴隨著網(wǎng)絡技術(shù)的不斷發(fā)展,圖片、數(shù)據(jù)庫、音頻、視頻多媒體等不同數(shù)據(jù)大量出現(xiàn),通用搜索引擎往往對這些信息含量密集且具有一定結(jié)構(gòu)的數(shù)據(jù)無能為力,不能很好地發(fā)現(xiàn)和獲取。

        (4)通用搜索引擎大多提供基于關鍵字的檢索,難以支持根據(jù)語義信息提出的查詢。

        為了解決上述問題,定向抓取相關網(wǎng)頁資源的聚焦爬蟲應運而生。聚焦爬蟲是一個自動下載網(wǎng)頁的程序,它根據(jù)既定的抓取目標,有選擇地訪問萬維網(wǎng)上的網(wǎng)頁與相關鏈接,獲取所需要的信息。與通用爬蟲不同,聚焦爬蟲并不追求大的覆蓋,而是將目標定為抓取與某一特定主題內(nèi)容相關的網(wǎng)頁,為面向主題的用戶查詢準備數(shù)據(jù)資源[5-7]。

        本文設計并實現(xiàn)了一種基于聚焦網(wǎng)絡爬蟲的搜索引擎。采用Java服務端網(wǎng)頁(JSP)技術(shù)來開發(fā)用戶界面,MyEclipse 作為開發(fā)設計平臺,Tomcat6.0 作為系統(tǒng)服務器,MySQL作為系統(tǒng)數(shù)據(jù)庫。通過聚焦爬蟲獲取網(wǎng)站數(shù)據(jù)并建立索引數(shù)據(jù)庫,為用戶提供一個方便的信息檢索工具。該引擎可以實現(xiàn)網(wǎng)站數(shù)據(jù)搜索、關鍵詞分析等功能。

        1 系統(tǒng)設計

        設置了2個角色,分別為普通用戶和數(shù)據(jù)庫管理員。普通用戶可以實現(xiàn)網(wǎng)頁搜索、圖片搜索等功能;數(shù)據(jù)庫管理員可以實現(xiàn)網(wǎng)絡爬蟲和數(shù)據(jù)庫的管理,通過網(wǎng)絡爬蟲獲取網(wǎng)站數(shù)據(jù)并建立索引數(shù)據(jù)庫等功能。系統(tǒng)功能模塊如圖1所示。

        圖1 系統(tǒng)功能模塊Fig.1 System function module

        1.1 普通用戶

        普通用戶可以實現(xiàn)網(wǎng)頁搜索、圖片搜索等功能。用戶在輸入關鍵詞后點擊搜索按鍵或者回車,跳轉(zhuǎn)至結(jié)果頁面。如果程序發(fā)現(xiàn)的網(wǎng)站符合用戶的要求,就會根據(jù)網(wǎng)頁中關鍵字的位置、出現(xiàn)次數(shù)計算出每個網(wǎng)頁的排名,最后按排名的順序返回給用戶。普通用戶也可以實時更改搜索要求。用戶獲取結(jié)果后,可以點擊任意鏈接跳轉(zhuǎn)到相應的網(wǎng)頁。普通用戶模塊流程如圖2所示。

        1.2 數(shù)據(jù)庫管理員

        數(shù)據(jù)庫管理員主要完成網(wǎng)絡爬蟲和數(shù)據(jù)庫的管理。數(shù)據(jù)庫管理員模塊流程如圖3所示。數(shù)據(jù)庫管理員界面顯示一些系統(tǒng)基礎數(shù)據(jù),如數(shù)據(jù)數(shù)量和用戶數(shù)量等。若數(shù)據(jù)庫管理員想要查看網(wǎng)頁數(shù)據(jù),則點擊網(wǎng)站數(shù)據(jù)菜單項下的數(shù)據(jù)列表,即可獲取全部網(wǎng)頁數(shù)據(jù)。

        圖2 普通用戶模塊流程Fig.2 Flow chart of ordinary user module

        圖3 數(shù)據(jù)庫管理員模塊流程Fig.3 Flow chart of database administrator module

        1.3 網(wǎng)絡爬蟲

        網(wǎng)絡爬蟲是一個自動提取網(wǎng)頁的程序,它為搜索引擎從萬維網(wǎng)上下載網(wǎng)頁,是搜索引擎的重要組成部分。傳統(tǒng)網(wǎng)絡爬蟲從一個或若干個初始網(wǎng)頁的統(tǒng)一資源定位地址(URL)開始,獲得初始網(wǎng)頁的URL。在抓取網(wǎng)頁的過程中,不斷從當前網(wǎng)頁抽取新的URL放入隊列,直到滿足系統(tǒng)的一定停止條件。

        聚焦爬蟲的工作流程較為復雜,需要根據(jù)一定的網(wǎng)頁分析算法過濾與主題無關的鏈接,保留有用的鏈接并將其放入等待抓取的URL隊列。然后,根據(jù)一定的搜索策略從隊列中選擇下一步要抓取的網(wǎng)頁的URL。重復上述過程,直到達到系統(tǒng)的某一條件時停止。聚焦爬蟲爬取過程的數(shù)據(jù)流如圖4所示。

        圖4 爬取過程的數(shù)據(jù)流Fig.4 Data flow of crawling process

        本搜索引擎的爬蟲程序采用聚焦爬蟲編寫,優(yōu)點是可以選擇性地爬取那些與預先設置好的關鍵詞序列相關的網(wǎng)頁[8-9]。爬蟲程序源碼部分由Python語言編寫,編寫的軟件是PyCharm。爬蟲實現(xiàn)過程的部分關鍵代碼如圖5所示。下載網(wǎng)頁部分代碼如圖6所示。

        圖5 爬蟲代碼Fig.5 Code of the crawler

        圖6 下載網(wǎng)頁部分的代碼 Fig.6 Code of downloading page part

        2 系統(tǒng)實現(xiàn)

        2.1 用戶功能實現(xiàn)

        用戶在訪問系統(tǒng)后就可以看到首頁界面。首頁采用簡單的結(jié)構(gòu)設計,直接向用戶提供本系統(tǒng)的核心功能——網(wǎng)頁搜索。系統(tǒng)首頁如圖7所示。

        圖7 首頁Fig.7 Home page

        搜索結(jié)果的顯示包含左側(cè)信息欄、中間搜索結(jié)果列表和右側(cè)搜索熱點列表等內(nèi)容。

        (1)左側(cè)信息欄

        在頁面的左側(cè)放一個欄目用于提示用戶搜索結(jié)果的一些細節(jié),除了顯示當前關鍵字外,還有相關關鍵詞,點擊即可訪問相關頁面。左側(cè)信息欄如圖8所示。

        圖8 左側(cè)信息欄Fig.8 Left information column

        (2)中間搜索結(jié)果列表

        如圖9所示,中間搜索結(jié)果列表和市面上的搜索引擎一樣,每條結(jié)果都由三部分組成,分別是標題、簡要介紹和修改日期(網(wǎng)站被爬取的日期)。

        圖9 中間搜索結(jié)果列表Fig.9 Middle part search result list

        (3)右側(cè)搜索熱點列表

        在熱點搜索里,每個關鍵詞都有一個搜索指數(shù)。每當有人搜索該關鍵詞時,指數(shù)就會上漲。頁面直接輸出數(shù)據(jù)庫里按搜索指數(shù)排名前10的記錄,如圖10所示。

        圖10 右側(cè)搜索熱點列表Fig.10 Right search hot spot list

        2.2 數(shù)據(jù)庫管理員功能實現(xiàn)

        由于系統(tǒng)的管理后臺作為前臺的鋪墊和延伸,因此在后臺管理界面上設計了數(shù)據(jù)查詢以及分類搜索等功能,針對不同權(quán)限的數(shù)據(jù)庫管理員提供不同的數(shù)據(jù)查看與修改方式。數(shù)據(jù)庫管理員的歡迎界面如圖11所示。

        數(shù)據(jù)庫管理員后臺的功能模塊可以簡單地分為數(shù)據(jù)管理和用戶管理,數(shù)據(jù)管理模塊又可以分為圖片管理和爬蟲管理2個部分。

        (1)圖片查詢頁面

        圖片數(shù)據(jù)按類別存放到不同的文件夾下,被數(shù)據(jù)庫管理員檢索的時候先按編號排序顯示在列表中,支持多列排序功能。點擊類別標簽可進入圖片展示頁面,該頁面可瀏覽該類別下的所有圖片。在圖片展示頁面,所有圖片被平鋪在頁面上,可以點擊單個圖片放大查看,也可以批量刪除圖片。圖片瀏覽列表如圖12所示。

        (2)爬蟲管理

        在關鍵詞管理模塊中,關鍵詞的來源有以下2個:一是由用戶搜索時添加,二是在爬取網(wǎng)頁的過程中寫入數(shù)據(jù)庫。數(shù)據(jù)庫管理員可以實時管理每個關鍵詞,或者自行添加關鍵詞,關鍵詞的排行是實時變動的,用戶搜索某個關鍵詞的次數(shù)越多,排名就越靠前。關鍵詞排名列表如圖13所示。

        3 結(jié)語

        本文介紹了基于聚焦爬蟲搜索引擎的實現(xiàn)過程。該系統(tǒng)實現(xiàn)了網(wǎng)頁搜索、圖片搜索以及熱點搜索排行等功能。通過大量測試,系統(tǒng)運行良好,具有較好的用戶體驗。

        圖11 管理后臺主界面Fig.11 Main interface of management backstage

        圖12 圖片瀏覽列表Fig.12 Picture browsing list

        圖13 關鍵詞排名列表Fig.13 Keyword ranking list

        猜你喜歡
        爬蟲搜索引擎列表
        巧用列表來推理
        利用網(wǎng)絡爬蟲技術(shù)驗證房地產(chǎn)灰犀牛之說
        基于Python的網(wǎng)絡爬蟲和反爬蟲技術(shù)研究
        學習運用列表法
        擴列吧
        利用爬蟲技術(shù)的Geo-Gnutel la VANET流量采集
        電子測試(2018年1期)2018-04-18 11:53:04
        大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡爬蟲技術(shù)
        電子制作(2017年9期)2017-04-17 03:00:46
        網(wǎng)絡搜索引擎亟待規(guī)范
        基于Nutch的醫(yī)療搜索引擎的研究與開發(fā)
        廣告主與搜索引擎的雙向博弈分析
        人妻 日韩精品 中文字幕| 国产一区二区三区天堂| 人妻少妇精品久久久久久| 成人免费看片又大又黄| 亚洲成av人片天堂网九九| 日本在线中文字幕一区二区| 国产91久久麻豆黄片| 精品久久久久久无码中文字幕| 亚洲女人被黑人巨大进入| 亚洲无码毛片免费视频在线观看 | 国产亚洲欧美日韩国产片| 国产一级黄色片一区二区| 天堂8在线新版官网| 内谢少妇xxxxx8老少交 | 亚洲日本在线电影| 国产亚洲欧美精品一区| 国产成人高清视频在线观看免费 | 国产视频不卡在线| 在线观看一区二区蜜桃| 专干老熟女视频在线观看| 女人被做到高潮免费视频| 精品人妻免费看一区二区三区| 国产成人国产三级国产精品| а天堂中文最新一区二区三区| 中文字幕在线亚洲日韩6页手机版| 国产综合一区二区三区av | 亚洲影院在线观看av| 久久精品一区午夜视频| 国产98在线 | 日韩| 欧美人成在线播放网站免费| 久久开心婷婷综合中文| 国产无遮挡又黄又爽高潮| 中文亚洲av片在线观看不卡| 欧美h久免费女| 不卡一本av天堂专区| 人妻久久久一区二区三区| 亚洲AV无码资源在线观看| 亚洲一区二区岛国高清| 中文字幕人乱码中文字幕| 少妇厨房愉情理伦片bd在线观看| 国产激情一区二区三区在线蜜臀|