資源描述:
《java課程設計—網(wǎng)絡爬蟲搜索引擎》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫。
1、java課程設計—網(wǎng)絡爬蟲搜索引擎導讀:就愛閱讀網(wǎng)友為您分享以下“java課程設計—網(wǎng)絡爬蟲搜索引擎”的資訊,希望對您有所幫助,感謝您對92to.com的支持!學號:課程設計題目學院專業(yè)班級姓名指導教師網(wǎng)絡爬蟲搜索引擎管理學院信息管理與信息系統(tǒng)王新31201年7月4日武漢理工大學《java語言》課程設計課程設計任務書學生姓名:指導教師:王新工作單位:信息管理與信息系統(tǒng)系題目:網(wǎng)絡爬蟲搜索引擎初始條件:合理應用Java相關知識與編程技能,結合UML面向對象設計,解決信息管理領域的實際問題,如學生成績管理、學籍管
2、理、圖書借閱管理、自動存取款機、通信錄管理、商品銷售管理、醫(yī)院門診管理、火車訂票管理、影院自動售票、世界杯足球比賽管理、人力資源管理、酒店前臺管理、房產(chǎn)中介管理、停車收費管理等。要求完成的主要任務:(包括課程設計工作量及其技術要求,以及說明書撰寫等具體要求)1.進行需求分析,撰寫需求文檔,繪制用例圖。2.識別需求文檔中的類,建模類,初步繪制類圖(之后逐漸完善)。3.確定、建模類的實例變量。314.確定、建模類的方法。5.若有需要,在系統(tǒng)中加入繼承與多態(tài)。6.將UML圖轉換成Java代碼框架。7.設計算法,若有
3、復雜的數(shù)據(jù)結構需求,使用相應集合框架。8.設計數(shù)據(jù)訪問層,若有數(shù)據(jù)持久化需求,使用數(shù)據(jù)庫/文件。9.添加表示層,若程序運行在桌面,使用圖形用戶界面。10.實現(xiàn)完整的系統(tǒng),最終Java源代碼至少在300行以上。11.進行測試,并給出相應結果。課程設計報告中要求詳細描述思路、步驟、方法、實現(xiàn)、問題及解決過程、操作說明、測試及結果。時間安排:1.2014年6月23日課程設計選題、查閱資料2.2014年6月24日~25日UML面向對象設計3.2014年6月26日~7月1日Java程序設計與代碼調(diào)試4.2014年7月2
4、日改進、完善、測試系統(tǒng)5.2014年7月3日~7月4日上午撰寫、提交課程設計報告6.2014年7月4日下午課程設計答辯指導教師簽名:年月日系主任(或責任教師)簽名:年月日31-2-武漢理工大學《java語言》課程設計網(wǎng)絡爬蟲搜索引擎1項目介紹1.1開發(fā)背景該項目軟件開發(fā)的意圖是開發(fā)出一款網(wǎng)絡爬蟲軟件。應用目標為搜集網(wǎng)絡信息,便于查詢使用。在如今的BIGDATA時代,網(wǎng)絡信息龐大而又復雜,用戶很難直接從中獲得需要的信息。網(wǎng)絡爬蟲軟件就是將這些信息收集并整理,當用戶發(fā)起搜索請求時,該系統(tǒng)可將用戶最需要的信息反饋給
5、用戶。1.2用戶的特點本軟件為免費軟件,可供所有可使用互聯(lián)網(wǎng)的用戶使用。最終用戶只需掌握基本的上網(wǎng)技術即可,操作人員的主要工作是啟動和關閉服務器,只需掌握基本的電腦使用方法即可。維護人員需要專業(yè)的程序員,懂得Java的網(wǎng)絡編程以及計算機網(wǎng)絡基礎,教育水平在專科以上。軟件的預期工作時間為24h/日。組織結構圖及用戶角色如圖表1-1所示:1.3需求分析1.3.1各子模塊功能的描述31本系統(tǒng)共分為三大模塊:爬蟲模塊、數(shù)據(jù)庫模塊和搜索模塊,也就是后臺、前臺和數(shù)據(jù)庫。每一個模塊有各自的分工,最后三大模塊集合在一起構成一
6、個完整的網(wǎng)絡爬蟲系統(tǒng)。各個子模塊的詳細功能如下:1.3.2爬蟲模塊-3-武漢理工大學《java語言》課程設計第一個模塊為爬蟲模塊。爬蟲模塊的主要任務是負責尋找網(wǎng)頁,并將網(wǎng)頁內(nèi)的URL和關鍵字提取出來。此模塊又詳細分為兩大模塊:服務器模塊和正則引擎模塊,這兩個模塊分別負責上述的兩個功能。服務器模塊向某個種子URL發(fā)送請求,或得其頁面內(nèi)容;正則引擎模塊將服務器獲取的頁面用正則表達式對其進行分析,截取其中的URL和關鍵字,然后再將URL傳遞給服務器模塊。系統(tǒng)按照這樣的方式不斷的抓取網(wǎng)頁并進行分析,最后將結果存進數(shù)據(jù)
7、庫。1.3.3搜索模塊第二個模塊是搜索模塊,用戶在搜索界面輸入關鍵字,然后系統(tǒng)在數(shù)據(jù)庫中搜索對應的關鍵字,最后將結果返回給用戶。31此模塊又分為搜索界面和結果界面。搜索界面是首頁,用戶在此界面中輸入想要搜索的關鍵詞,這些關鍵詞將被此頁面記錄下來傳遞到數(shù)據(jù)中進行搜素。結果頁面是數(shù)據(jù)庫結果的接受者,當數(shù)據(jù)庫完成搜素后會將結果傳遞給次頁面,然后結果頁面會將結果呈現(xiàn)給用戶。1.3.4數(shù)據(jù)庫模塊數(shù)據(jù)庫模塊在整個系統(tǒng)中起到存儲和橋梁作用。爬蟲模塊將搜索的結果整理完成后存入數(shù)據(jù)庫,搜索模塊從數(shù)據(jù)庫中獲取需要的信息并呈現(xiàn)給用
8、戶。1.4對非功能性的需求1.4.1精度該系統(tǒng)的輸入為一個字符串,里面包含了一個或多個關鍵字,長度在38個漢字以內(nèi),超過的部分將被直接舍棄。輸出的數(shù)據(jù)要求包括網(wǎng)站的URL和頁面簡介,按照頁面內(nèi)容與搜索內(nèi)容的匹配程度來排序。1.4.2時間特性要求a)響應時間≤0.01sb)更新處理時間≤0.1c)數(shù)據(jù)的轉換和傳送時間≤0.1s1.4.3靈活性-4-武漢理工大學《java語言》課程設計31該系統(tǒng)運用的主