freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

網(wǎng)絡爬蟲的設計與實現(xiàn)(編輯修改稿)

2025-08-05 12:59 本頁面
 

【文章內(nèi)容簡介】 ,主題相關度低于某一閾值的網(wǎng)頁被丟棄。(1) 什么是網(wǎng)頁標題  通常瀏覽一個網(wǎng)頁時,通過瀏覽器頂端的藍色顯示條出現(xiàn)的信息就是“網(wǎng)頁標題”。  在網(wǎng)頁HTML代碼中,網(wǎng)頁標題位于標簽之間?!   【W(wǎng)頁標題是對于一個網(wǎng)頁的高度概括,一般來說,網(wǎng)站首頁的標題就是網(wǎng)站的正式名稱,而網(wǎng)站中文章內(nèi)容頁面的標題就是這文章的題目,欄目首頁的標題通常是欄目名稱。當然這種一般原則并不是固定不變的,在實際工作中可能會有一定的變化,但是無論如何變化,總體上仍然會遵照這種規(guī)律[12]?! ±?,現(xiàn)在會看到很多網(wǎng)站的首頁標題較長,除了網(wǎng)站名稱之外,還有網(wǎng)站相關業(yè)務之類的關鍵詞,這主要是為了在搜索引擎搜索結果中獲得排名優(yōu)勢而考慮的,也屬于正常的搜索引擎優(yōu)化方法。因為一般的公司名稱(或者品牌名稱)中可能不包含核心業(yè)務的關鍵詞,在搜索結果排名中將處于不利地位。 ?。ǘ┚W(wǎng)頁標題的重要性  以Google為例,Google會對其標題標簽(meta title)中出現(xiàn)的關鍵字給予較高的權值。所以應當確保在網(wǎng)站的標題標簽中包含了最重要的關鍵詞,即應圍繞最重要的關鍵詞來決定網(wǎng)頁標題的內(nèi)容。不過網(wǎng)頁的標題不可過長,一般最好在35到40個字符之間。在實際操作中,網(wǎng)頁標題不宜過短或過長。太短無法完整的表達網(wǎng)頁信息,太長不僅不利于用戶識別,而且對搜索引擎來說也加大了識別核心關鍵詞的難度;網(wǎng)頁標題應概括網(wǎng)頁的核心內(nèi)容。搜索引擎在進行搜索的時候,搜索結果的內(nèi)容一般是網(wǎng)頁標題、網(wǎng)頁摘要信息和鏈接,要引起用戶的關注,高度總結了網(wǎng)頁內(nèi)容的標題至關重要?!按鳡栔袊―ell China)—計算機,筆記本電腦,臺式機,打印機,工作站,服務器,存儲器,電子產(chǎn)品及附件等”。戴爾的首頁標題中不但涵蓋了最重要的公司信息,而且還包括公司的主要產(chǎn)品,這就是核心關鍵詞,當用“筆記本電腦”、“臺式電腦”這些關鍵詞在谷歌中進行搜索時,戴爾公司的網(wǎng)頁都排在第一屏的前幾條位置。(2) 但是與此同時需要注意的還有網(wǎng)頁正文的重要性,因為網(wǎng)頁的標題和關鍵字很可能與正文無關,虛假關鍵詞是通過在META中設置與網(wǎng)站內(nèi)容無關的關鍵詞,如在Title中設置熱門關鍵詞,以達到誤導用戶進入網(wǎng)站的目的。同樣的情況也包括鏈接關鍵詞與實際內(nèi)容不符的情況。 具體判斷主題相關度的步驟 ,并通過詞頻計算來得到與主題向量維數(shù)相等的標題向量和正文向量。  。  。 ?。篈=4B+C?! 。O定相關度閾值為2,網(wǎng)頁與主題的相關度A2,則認為該網(wǎng)頁與主題相關的?!【W(wǎng)絡爬蟲的概要設計本網(wǎng)絡爬蟲的開發(fā)目的,通過網(wǎng)絡爬蟲技術一個自動提取網(wǎng)頁的程序,實現(xiàn)搜索引擎從自己想要訪問的網(wǎng)上下載網(wǎng)頁,再根據(jù)已下載的網(wǎng)頁上繼續(xù)訪問其它的網(wǎng)頁,并將其下載直到滿足用戶的需求。根據(jù)現(xiàn)實中不同用戶的實際上的各種需求,本項目簡單實現(xiàn)主題爬蟲,本網(wǎng)絡爬蟲需要達到如下幾個目標:,客戶端向服務器發(fā)送自己設定好請求。如圖37所示。URL配置文件URL配置文件列表臨界區(qū)互聯(lián)網(wǎng)線程N圖32 多線程網(wǎng)絡爬蟲概要設計圖模型 將Web服務器上協(xié)議站點的網(wǎng)頁代碼提取出來。,訪問該鏈接網(wǎng)頁上的所有鏈接,訪問完成后,再通過遞歸算法實現(xiàn)下一層的訪問。 本網(wǎng)絡爬蟲最終將設計成一個能夠自動讀寫配置文件并且在后臺自動執(zhí)行的網(wǎng)絡爬蟲程序。網(wǎng)絡爬蟲工作流程圖如圖33所示。圖33 網(wǎng)絡爬蟲工作流程圖 第四章 網(wǎng)絡爬蟲模型的設計和實現(xiàn) 網(wǎng)絡爬蟲總體設計根據(jù)本網(wǎng)絡爬蟲的概要設計本網(wǎng)絡爬蟲是一個自動提取網(wǎng)頁的程序,根據(jù)設定的主題判斷是否與主題相關,再根據(jù)已下載的網(wǎng)頁上繼續(xù)訪問其它的網(wǎng)頁,并將其下載直到滿足用戶的需求。 。 將待爬取URL列表對應的URL的網(wǎng)頁代碼提取出來。,從網(wǎng)頁中某個鏈接出發(fā),訪問該鏈接網(wǎng)頁上的所有鏈接,訪問完成后,再通過遞歸算法實現(xiàn)下一層的訪問,重復以上步驟??偟膩碚f爬蟲程序根據(jù)輸入獲得URL任務列表,即初始URL種子,把初始種子保存在臨界區(qū)中,按照廣度搜索運算法搜索抓取網(wǎng)頁并提取URL返回到臨屆區(qū)中,通過判斷主題相關度算法判斷相關度,取出不相關網(wǎng)頁,從而使整個爬蟲程序循環(huán)運行下去。 網(wǎng)絡爬蟲具體設計 爬取網(wǎng)頁 主要用到的技術如下:繼承HTMLEditorKit類,改寫其中的 getParser()屬性protect為public,用下列函數(shù)爬取網(wǎng)頁:public class XXXXX extends HTMLEditorKit {public getParser(){return ()。 }}步驟如下:1首先建立URL連接。URLConnection url_C = ()。2設置連接超時時間和讀取超時時間。(10000)。(10000)。3. 用輸入流,BufferedReader讀取,并且將網(wǎng)頁內(nèi)容存儲為字符串?!》治鼍W(wǎng)頁繼承ParserCallback獲得網(wǎng)頁內(nèi)容// 得到標題文本 protected String urlTitle = new String()。 // 得到某一網(wǎng)頁上的所有鏈接 protected VectorString links = new VectorString()。 protected VectorString linkname = new VectorString()。 // 得到網(wǎng)頁上的正文文本 protected String paragraphText = new String()。 protected String linkandparagraph = new String()。 protected String encode = new String()。 public Parser(String baseurl) { base = baseurl。 } public String getEncode() { return encode。 } // 獲得該網(wǎng)頁標題 public String getURLtitle() { return urlTitle。 } // 獲得該網(wǎng)頁的所有鏈接 public Vector getLinks() { return links。 } // 獲得所有該網(wǎng)頁的鏈接名 public Vector getLinkName() // 獲得網(wǎng)頁正文 public String getParagraphText() public void handleEndTag( t, int pos) // 處理簡單標簽 public void handleSimpleTag( t, MutableAttributeSet a, int pos) // 處理結束標簽 public void handleStartTag( t, MutableAttributeSet a, int pos) // 處理文本 標簽 public void handleText(char[] data, int pos),生成對象就可以直接得到分析后的網(wǎng)頁文件。 判斷相關度 算法實現(xiàn)步驟和算法描述:1. 對標題及正文的特征項的選取是通過分詞后與主題集合匹配,并通過詞頻計算來得到與主題向量維數(shù)相等的標題向量和正文向量。:A=4B+C。,設定相關度閾值為2,網(wǎng)頁與主題的相關度A2,則認為該網(wǎng)頁與主題相關的?! ≥斎耄?,網(wǎng)頁url  輸出:主題相關度 ?。?)Get topic(String path)//根據(jù)路徑獲取主題文本集合 ?。?)Compulate topicweight(String topic)//求主題結合權重(3)sortAndDelRepeat(int[]count)//刪除重復元素并排序(4)delRepeat(String[] segment)//刪除分詞后的重復元素(5)delRepeat(Vector url)//刪除得到的URL中的重復元素(6)getParser(String url)//獲得Parser實例 ?。?)String titleStr =()//獲取網(wǎng)頁標題  (8)String bodyStr=()//獲取網(wǎng)頁文本 ?。?)String titleStrSeg=(titleStr)//網(wǎng)頁標題分詞  (10)String bodyStrSeg=(bodyStr)//網(wǎng)頁文本分詞 ?。?1)Compulate , ?。?2)set topicweight1,titleweight1,bodyweight1;//設置權重  (13)Last pulate Relative//計算主題相關性 ?。?4)Return relative;//返回結果   根據(jù)系統(tǒng)設置首先是下載所有網(wǎng)頁,而后判定主題相關性,與主題相關則放置在相關URL庫中,不相關的網(wǎng)頁則丟棄。 保存網(wǎng)頁信息。URLConnection url_C = ()。如下:private String Host。private int Port。private String ContentType。private int ContentLength。private String Date。private String Url。 數(shù)據(jù)庫設計和存儲使用JDBC訪問數(shù)據(jù)庫,儲存下載的網(wǎng)頁URL和下載時間信息?!《嗑€程的實現(xiàn) 設計為4個線程同時進行工作。1. 從用戶輸入的起始URL開始,遞歸獲得指定深度的URL。2. 對每個URL進行分析,判斷相關度。3. 下載與主題相關的網(wǎng)頁,并存儲在數(shù)據(jù)庫中。第i個線程對所有URL列表中序列為第0+4i URL的進行同步操作,其中對儲存所有URL的列表執(zhí)行synchronized (all_URL)操作?!「郊庸δ転榱藱z測網(wǎng)絡環(huán)境,防止因為不良的網(wǎng)絡環(huán)境影響網(wǎng)絡爬蟲的爬取效率和正確略,額外添加了實時的ping功能,調(diào)用windows的命令解釋器的ping功能,測試用戶輸入網(wǎng)址與當前主機的連接狀況,測試當前網(wǎng)絡狀況是否良好?!≌w流程爬蟲代碼文件構成如圖41:圖41  代碼結構構成截圖 getParser()方法為public。具體流程:第一步: ,獲得起始URL的內(nèi)容,并存儲到String中。第二步:,同時去除重復的部分。第三步:對以上兩步進行遞歸循環(huán),獲得指定深度的所有URL列表。第四步:,大于給定值則相關,小于給定值則不相關,丟棄該URL。第五步:。 第五章  測試 設定只爬取前5個網(wǎng)頁,程序運行后的界面如圖51圖51  測試圖1預設目錄為,D:test 按下START后,查看目錄,可見如圖52:圖52  測試圖2查看數(shù)據(jù)庫可見,如圖53:圖53  測試圖3測試Ping功能,分別對正確網(wǎng)址ping和不正確網(wǎng)址ping,如圖54圖54  測試圖4圖55  測試圖5圖56  測試圖6 第六章  總結和展望2011年3月,我開始了我的畢業(yè)論文工作,時至今日,論文基本完成。從最初的茫然,到慢慢的進入狀態(tài),再到對思路逐漸的清晰,整個寫作過程難以用語言 來表達。歷經(jīng)了幾個月的奮戰(zhàn),緊張而又充實的畢業(yè)設計終于落下了帷幕。回想這段日子的經(jīng)歷和感受,我感慨萬千,在這次畢業(yè)設計的過程中,我擁有了無數(shù)難忘的回憶和收獲。 3月初,在與導師的交流討論中我的題目定了下來,是面向主題的網(wǎng)絡爬蟲。當選題報告,開題報告定下來的時候,我當時便立刻著手資料的收集工作中,當時面對浩瀚的書海真是有些茫然,不知如何下手。我將這一困難告訴了導師,在導師細心的指導下,終于使我對自己現(xiàn)在的工作方向和方法有了掌握。   在搜集資料的過程中,我認真準備了一個筆記本。我在學校圖書館,大工圖書館搜集資料,還在網(wǎng)上查找各類相關資料,將這些寶貴的資料全部記在筆記本上,盡量使我的資料完整、精確、數(shù)量多,這有利于論文的撰寫。然后我將收集到的資料仔細整理分類,及時拿給導師進行溝通。   4月初,資料已經(jīng)查找完畢了,我開始著手論文的寫作。在寫作過程中遇到困難我就及時和導師聯(lián)系,并和同學互相交流,請教專業(yè)課老師。在大家的幫助下,困難一個一個解決掉,論文也慢慢成型。   4月底,平臺設計已經(jīng)完成。5月開始相關代碼編寫工作。為了完成滿意的平臺設計,我仔細溫習了數(shù)據(jù)庫原理相關知識。深入了解并掌握數(shù)據(jù)庫基礎知識,挖掘出數(shù)據(jù)庫課程中的難點和重點,對于其中的難點,要充分考慮學生的學習能力,幫助學生以一種最容易接受的方式掌握知識。對于課程中的重點,要強調(diào)突出,有規(guī)律反復出現(xiàn),幫助學生更高效消化知識。在設計平臺中,要注意平臺的可行性和有效性,選擇既重要又適合以學習軟件形式出現(xiàn)的知識點作為材料,參考優(yōu)秀的國內(nèi)外學習輔助平臺,又考慮到數(shù)據(jù)庫課程的特殊性。在設計初期,由于沒有設計經(jīng)驗,覺得無從下手,空有很多設計思想,卻不知道應該選哪個,經(jīng)過導師的指導,我的設計漸漸有了頭緒,通過查閱資料,逐漸確立系統(tǒng)方案。在整個過程中,我學到了新知識,增長了見識。在今后的日子里,我仍然要不斷地充實自 己,爭取在所學領域有所作為。   腳踏實地,認真嚴謹,實事求是的學習態(tài)度,不怕困難、堅持不懈、吃苦耐勞的精神是我在這次設計中最大的收益。我想這是一次意志的磨練,是對我實際能力的一次提升,也會對我未來的學習和工作有很大的幫助。   在這次畢業(yè)設計
點擊復制文檔內(nèi)容
數(shù)學相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1