版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、2016-2017-1學(xué)期搜索引擎技術(shù)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)二:實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?根據(jù)網(wǎng)絡(luò)爬蟲的基本原理,實(shí)現(xiàn)一個(gè)簡易網(wǎng)絡(luò)爬蟲,需要達(dá)到以下指標(biāo): 1、種子URL為; 2、至少抓取10000個(gè)頁面; 3、至少完成3輪抓取,每輪給出更新的URL及其數(shù)量;4、實(shí)現(xiàn)判重,列出每輪爬去時(shí)重復(fù)的URL數(shù)量;5、數(shù)據(jù)存放到數(shù)據(jù)庫中,能抽取出網(wǎng)頁中的標(biāo)題、頁面生成日期(http協(xié)議中的時(shí)間),至少包含標(biāo)題、時(shí)間、url、抓取時(shí)間、網(wǎng)頁正文這幾個(gè)字段。二、實(shí)驗(yàn)方案:1. 爬蟲分析與設(shè)計(jì)我們組應(yīng)用的是java來寫爬蟲,我們應(yīng)用SSM框架將數(shù)據(jù)庫和應(yīng)用程序連接起來,可以在程序中更簡單的進(jìn)行數(shù)據(jù)庫插入、查詢等操作。在對(duì)ur
2、l處理的時(shí)候我們用的是Java的URL類,通過這個(gè)類可以獲得請(qǐng)求頭的一些信息,例如編碼方式。如何獲取url,我們一開始遇到了一些問題,直接解析網(wǎng)頁中的ref標(biāo)簽的時(shí)候得到的不全是網(wǎng)頁鏈接,所以轉(zhuǎn)換思路,我們先得到頁面中的<a>標(biāo)簽,然后再得到<a>標(biāo)簽里邊href中的url,然后再對(duì)url進(jìn)行處理。在處理url的時(shí)候,因?yàn)榫W(wǎng)頁中的url并不是全部以http開頭的,所以在url獲取部分,對(duì)url的格式進(jìn)行判斷,如果通常格式就進(jìn)行修改,例如,有的鏈接是”#”,我們就把開始搜索的url加到它的前邊,形成一個(gè)正確的url。圖1:應(yīng)用URL類獲取網(wǎng)頁內(nèi)容圖2:利用url請(qǐng)求頭獲取
3、編碼信息圖3:獲取a標(biāo)簽圖4-1:獲取url圖4-2:獲取url圖5:url判重2. 數(shù)據(jù)庫分析與設(shè)計(jì)我們設(shè)計(jì)了兩個(gè)表,一個(gè)是未爬取url表,兩一個(gè)是已經(jīng)爬取url表。未爬取的表中村的是搜索判重之后,還沒有爬取的url,已爬取的存儲(chǔ)爬取到的信息。圖6:判重后需要爬取的url表圖7:爬取后url信息存儲(chǔ)表圖9:去重后url的部分信息圖10:爬取結(jié)果部分信息圖11:網(wǎng)頁內(nèi)容存txt部分信息三、實(shí)驗(yàn)結(jié)果及分析:試驗(yàn)中每一次爬取的網(wǎng)頁數(shù)量都是超過了10000的,達(dá)到了數(shù)量上的要求,但是在處理的過程中,對(duì)于中文的解析有的并不理想,這個(gè)是因?yàn)橛械膗rl在請(qǐng)求頭里邊沒有網(wǎng)頁的編碼信息,所以對(duì)于這種網(wǎng)頁的處理
4、是按照“utf-8”的編碼方式處理的,所以得到的數(shù)據(jù)可能會(huì)有亂碼。此外有的網(wǎng)頁中沒有<title>標(biāo)簽,所以有的標(biāo)題不可以得到。在一開始的時(shí)候爬蟲程序就是簡單的按順序獲取網(wǎng)頁內(nèi)容,內(nèi)因程序?qū)懙男什桓撸廊?000+網(wǎng)頁就用了一個(gè)小時(shí),所以在之后用到了三個(gè)線程同時(shí)爬取,使得爬取的速度有了很大的提升。圖12:三次爬取結(jié)果對(duì)比四、實(shí)驗(yàn)總結(jié):優(yōu)點(diǎn):爬取數(shù)據(jù)的存取應(yīng)用了數(shù)據(jù)庫,相較文本而言,應(yīng)用數(shù)據(jù)庫在數(shù)據(jù)的存取上十分的方便,效率要高很多,因?yàn)槿绻梦谋具M(jìn)行存取,每一次比較數(shù)據(jù)的時(shí)候都要把文本遍歷一遍,時(shí)空效率都很低,另外用數(shù)據(jù)庫存數(shù)據(jù)條目很清晰,可以方便觀察爬取到的數(shù)據(jù);爬取數(shù)據(jù)運(yùn)用多線程,有效的提高了爬取效率,在沒有用多線程進(jìn)行爬取的時(shí)候2000+個(gè)url爬取了1個(gè)小時(shí),之后用了3個(gè)線程同時(shí)爬取數(shù)據(jù),爬取的效率有了明顯的提高。缺點(diǎn):文本處理有瑕疵,有的網(wǎng)頁在請(qǐng)求頭沒有給出編碼信息,所以獲得到的文本信息含有亂碼,有的沒有給出網(wǎng)頁的發(fā)布時(shí)間,所以只有把發(fā)布時(shí)間默認(rèn)成爬取的時(shí)間。有的網(wǎng)頁中沒有title標(biāo)簽,沒有辦法得到url的標(biāo)題。在網(wǎng)上看到了一些論
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療器械工程居間合同范本
- 施工電梯布置專項(xiàng)方案
- 食品安全風(fēng)險(xiǎn)評(píng)估與管理技術(shù)作業(yè)指導(dǎo)書
- 承包山林合同書
- 市場營銷策略制定與實(shí)施作業(yè)指導(dǎo)書
- 停車場管理服務(wù)合同
- 住房和城鄉(xiāng)建設(shè)委員會(huì)
- 林業(yè)經(jīng)濟(jì)管理與政策作業(yè)指導(dǎo)書
- 雞舍租賃合同
- 技術(shù)服務(wù)合同格式
- 江蘇省南通市2023-2024學(xué)年小升初語文試卷(含答案)
- 人教版四年級(jí)上冊數(shù)學(xué)【選擇題】專項(xiàng)練習(xí)100題附答案
- CB-T4528-2024《船舶行業(yè)企業(yè)應(yīng)急管理要求》
- 22G101三維彩色立體圖集
- (正式版)HG∕T 20644-2024 彈簧支吊架選用標(biāo)準(zhǔn)
- 中心醫(yī)院消防施工組織設(shè)計(jì)
- 港口自動(dòng)化與智慧港口發(fā)展方向
- 人教版小學(xué)英語單詞表(完整版)
- 黑龍江省哈爾濱市雙城區(qū)2024年八年級(jí)下冊物理期末經(jīng)典試題含解析
- 項(xiàng)目采購管理培訓(xùn)
- (高清版)DZT 0399-2022 礦山資源儲(chǔ)量管理規(guī)范
評(píng)論
0/150
提交評(píng)論