基于C#編程語言的網(wǎng)絡(luò)類垂直搜索引擎數(shù)據(jù)采集技術(shù)研究
發(fā)布時(shí)間:2014-09-16 15:49
【摘要】 搜索引擎是目前互聯(lián)網(wǎng)信息服務(wù)的主要工具,它的競爭也日趨激烈,搜索引擎的信息服務(wù)也逐漸引起重視。本文從信息服務(wù)的角度出發(fā),通過對(duì)綜合搜索引擎與垂直搜索引擎在信息服務(wù)各個(gè)要素方面的比較,找出它們之間的競爭與合作的關(guān)系,為當(dāng)前的搜索引擎發(fā)展做出初步的分析。
【關(guān)鍵詞】 搜索引擎; 垂直搜索引擎; 信息服務(wù); 比較研究;
(一)研究背景;ヂ(lián)網(wǎng)發(fā)展十余年,在這十余年的市場培育,發(fā)展的方向始終跟隨者web用戶的腳步,用戶希望能有一種軟件能在一定區(qū)域上對(duì)信息的智能采集和加工,從而來提高工作效率,因此采集技術(shù)在不斷的更新,采集軟件也隨之備受歡迎。
。ǘ╅_發(fā)背景。如今的互聯(lián)網(wǎng),遍及全球,發(fā)展迅猛,信息在不斷的更新,Internet信息庫變得十分龐大。Web信息都是以網(wǎng)頁的形式,通過瀏覽器被用戶查看。目前搜索引擎技術(shù)發(fā)達(dá),Web用戶都會(huì)通過搜索引擎搜索關(guān)鍵詞來查找自己想要的信息,但查到的結(jié)果不盡人意,包含了很多不相關(guān)的頁面,還要自己認(rèn)真查找,因此要直接查找自己想要的精確信息非常困難。
。ㄈ┭芯恳饬x。網(wǎng)絡(luò)上的信息非常豐富,數(shù)據(jù)類型多樣,不斷更新、不斷變化,如何迅速的、準(zhǔn)確的獲取到自己需要的數(shù)據(jù),有價(jià)值的信息,變得越來越難。如何充分的利用網(wǎng)絡(luò)信息資源進(jìn)行方便快速的檢索,從而引出搜索引擎技術(shù),它們與網(wǎng)絡(luò)技術(shù)和信息技術(shù)一起,在發(fā)展和使用中逐步完善。企業(yè)及個(gè)人網(wǎng)站需要在百度上有個(gè)好的排名,就必須運(yùn)用到SEO相關(guān)的技術(shù),其中更新網(wǎng)站信息是最主要的,但這需要太多的時(shí)間與人力,該網(wǎng)絡(luò)類數(shù)據(jù)采集引擎就可以避免公司及個(gè)人的成本,并且可以提高工作效率。
二、系統(tǒng)調(diào)研與可行性分析
。ㄒ唬┈F(xiàn)狀調(diào)研。隨著網(wǎng)絡(luò)的發(fā)展,網(wǎng)絡(luò)創(chuàng)業(yè)也成了現(xiàn)在的主流。但這些離開不了搜索引擎的作用,因?yàn)橐辛髁烤偷靡琶,要有排名就得跟著各大搜索引擎的步法走,走偏了,就得受罰。不管做網(wǎng)站還是做推廣少不了信息的獲取本文由筆耕文化傳播http://www.bigengculture.com收集整理,但是獲取具有相對(duì)性高的信息是比較費(fèi)時(shí)間和人力的,因此采集引擎發(fā)揮了很大的作用并得到廣泛的應(yīng)用。
。ǘ┛尚行苑治觥,F(xiàn)在大多數(shù)的信息的采集主要是為手工處理,很多重復(fù)操作,而且是容易找到許多不相關(guān)的信息,該網(wǎng)絡(luò)類垂直搜索引擎數(shù)據(jù)采集軟件的使用是否可以解決以上問題,就要對(duì)軟件進(jìn)行可行性分析。一般軟件的可行性分析會(huì)對(duì)以下方面進(jìn)行:(1)技術(shù)可行性:程序運(yùn)行采集信息時(shí)采用的是多線程處理,使處理速度更快。(2)經(jīng)濟(jì)可行性:在設(shè)計(jì)該軟件時(shí)不需要太多的成本,也不需要太多的人力投入,需要連接網(wǎng)絡(luò)。(3)運(yùn)行上可行性:雖然本軟件使用的是多線程處理,消耗的相對(duì)比較大,但是現(xiàn)在一般的電腦都可以運(yùn)行。(4)從社會(huì)需求上分析:更新信息本來是個(gè)工作量大的工作,該軟件就可以避免這個(gè)問題,可以降低工作強(qiáng)度,提高工作效率。
三、系統(tǒng)相關(guān)技術(shù)簡介
。ㄒ唬┐怪彼阉饕。隨著互聯(lián)網(wǎng)信息的日益發(fā)展、不斷龐大,精確獲取信息的難度越來越大,那么怎樣在大量的信息中找到自己想要的信息,成為了一個(gè)迫在眉睫的問題,需要新的技術(shù)、新的理念來解決這個(gè)棘手的問題,因此搜索引擎的出現(xiàn)成為了必然,同時(shí)也開始影響著我們的需求,影響著我們的生活。由于普通的、通用的搜索引擎有著查詢的信息量很大、但目標(biāo)不夠準(zhǔn)確、有許多重復(fù)的內(nèi)容或根本無關(guān)緊要的內(nèi)容,而且搜索出的信息深度不夠等缺點(diǎn),所以為精確的搜索出需要的信息,滿足用戶的需求,從而誕生了垂直搜索引擎。
(二)搜索引擎爬蟲。搜索引擎爬蟲是一種按照一定網(wǎng)頁資源無關(guān)性、覆蓋率數(shù)據(jù)結(jié)構(gòu)型、語義檢索等自動(dòng)抓取網(wǎng)絡(luò)資源的程序,它的執(zhí)行過程和網(wǎng)絡(luò)爬行很相似。
現(xiàn)在的網(wǎng)絡(luò)信息都是以網(wǎng)頁的形式加載信息,如果這個(gè)網(wǎng)頁沒有被搜索引擎爬蟲收錄,這個(gè)網(wǎng)頁在互聯(lián)網(wǎng)上是很難找不到的,這只能通過連接直接打開,通過搜索引擎查找是不可能找到的。因?yàn)樗阉饕媾老x采集時(shí)有URL去重功能,所以提供給用戶的都是一些很有價(jià)值的信息。
(三)數(shù)據(jù)采集。網(wǎng)絡(luò)基本上所有網(wǎng)站都分為三大模板:首頁模板、內(nèi)容頁模板,列表頁模板、所以一個(gè)網(wǎng)站的列表頁、文章的HTML代碼的結(jié)構(gòu)基本相同,這就便于去根據(jù)規(guī)律采集文章信息,采集網(wǎng)頁內(nèi)容方式主要有兩種:智能提取和正則提取。
(四)站群。站群是目前比較掙錢的網(wǎng)賺項(xiàng)目之一,為了維護(hù)這些網(wǎng)站每天都得給網(wǎng)站發(fā)布一定數(shù)量的信息,如果一個(gè)網(wǎng)站發(fā)10篇,就得準(zhǔn)備至少100篇文章,這樣的工作量不可能讓人工來操作,必須要有具備采集數(shù)據(jù)功能的軟件協(xié)助,這樣就可以大大提高工作效率。
四、系統(tǒng)總體設(shè)計(jì)分析
(一)系統(tǒng)需求分析。在龐大的Internet信息寶庫中,怎樣精確獲取信息的難度越來越大,用戶也迫切的需要一個(gè)簡便的檢索工具去得到自己想要的信息,因此搜索引擎的產(chǎn)生成為了必然。搜索引擎的數(shù)據(jù)采集模塊主要是對(duì)網(wǎng)絡(luò)上原創(chuàng)性的網(wǎng)頁信息采集下來保存在數(shù)據(jù)庫中。如果該網(wǎng)頁發(fā)生了更新,數(shù)據(jù)采集模塊會(huì)檢測到后下載并對(duì)本地的舊信息進(jìn)行替換更新。因此通過剖析網(wǎng)絡(luò)垂直搜索引擎中數(shù)據(jù)采集的基本方法和運(yùn)行機(jī)制,再通過軟件來現(xiàn)實(shí)數(shù)據(jù)采集,從而可以快速解決許多重復(fù)性的勞動(dòng)問題。
(二)系統(tǒng)實(shí)現(xiàn)的目標(biāo)。本系統(tǒng)主要實(shí)現(xiàn)的目標(biāo)有以下幾個(gè)方面:(1)界面設(shè)計(jì)簡潔、美觀、直觀。(2)數(shù)據(jù)存儲(chǔ)準(zhǔn)確、安全、可靠。(3)任務(wù)運(yùn)行靈活。(4)系統(tǒng)操作性強(qiáng)、維護(hù)方便。
。ㄈ┫到y(tǒng)功能模塊設(shè)計(jì)。(1)主程序模塊:加載數(shù)據(jù)庫里面的抓取任務(wù)信息,下面的小框中就會(huì)顯示任務(wù)運(yùn)行時(shí)的抓取日志和運(yùn)行進(jìn)程的個(gè)數(shù)。(2)新建任務(wù)模塊:為程序的主要模塊,又分為四個(gè)小模塊:任務(wù)基本信息模塊、提取列表分頁模塊、提取文章地址模塊、提取文章內(nèi)容模塊。(3)文章庫模塊:查看所有抓取的文章信息。(4)系統(tǒng)設(shè)置模塊:設(shè)置每個(gè)線程執(zhí)行的間隔時(shí)間。(5)聯(lián)系方式模塊:關(guān)于系統(tǒng)的簡介及我們的聯(lián)系方式。(6)任務(wù)控制模塊:控制選中任務(wù)運(yùn)行、暫停、停止。(7)任務(wù)文章查看模塊:查看選中任務(wù)抓取的文章信息。(8)任務(wù)文章刪除模塊:刪除選中任務(wù)抓取的文章。(9)任務(wù)列表加載模塊:實(shí)現(xiàn)刷新、選定任務(wù)刪除、選定任務(wù)運(yùn)行、選定任務(wù)暫停、選定任務(wù)停止、查看選定任務(wù)文章、導(dǎo)出。(10) 加載顯示任務(wù)運(yùn)行日志模塊:顯示所有線程的運(yùn)行狀態(tài)。
。ㄋ模┫到y(tǒng)功能結(jié)構(gòu)圖。根據(jù)基于C#的網(wǎng)絡(luò)類垂直搜索引擎數(shù)據(jù)采集的實(shí)際需求,可以將網(wǎng)絡(luò)類數(shù)據(jù)采集引擎劃分為新建任務(wù)、文章庫、系統(tǒng)設(shè)置、關(guān)于我們、任務(wù)運(yùn)行、任務(wù)暫停、任務(wù)停止、指定任務(wù)文章查看、指定任務(wù)文章刪除、任務(wù)加載列表、顯示任務(wù)運(yùn)行狀態(tài)框、顯示線程數(shù)量12個(gè)部分。
(五)系統(tǒng)流程圖;贑#的網(wǎng)絡(luò)類數(shù)據(jù)采集引擎的流程是用戶先要新建自己的抓取任務(wù),依次要填寫任務(wù)名稱、采集方式、網(wǎng)站編碼、入口地址、列表URL提取正則、網(wǎng)頁URL提取正則、內(nèi)容提取方式、內(nèi)容提取正則;然后保存任務(wù),刷新加載任務(wù)列表,會(huì)顯示新建的任務(wù),運(yùn)行新建任務(wù),把抓取到的信息保存在數(shù)據(jù)庫中,同時(shí)顯示任務(wù)運(yùn)行狀態(tài)框會(huì)顯示抓取信息情況。
結(jié)語:雖然該數(shù)據(jù)采集軟件的完成了,但是凡事總是不夠完美,該軟件還有一些不足。因?yàn)樵撥浖l繁地訪問同一個(gè)服務(wù)器上的網(wǎng)頁,服務(wù)器可能會(huì)對(duì)軟件所在的電腦進(jìn)行封鎖IP,禁止在訪問,軟件將無法再抓取,因此該軟件最大的不足就是沒有實(shí)現(xiàn)切換代理IP訪問網(wǎng)頁。另外的不足就是沒有實(shí)現(xiàn)對(duì)應(yīng)發(fā)布功能,這些功能方面應(yīng)該做進(jìn)一個(gè)的完善。
參考文獻(xiàn):
本文編號(hào):9006
【關(guān)鍵詞】 搜索引擎; 垂直搜索引擎; 信息服務(wù); 比較研究;
(一)研究背景;ヂ(lián)網(wǎng)發(fā)展十余年,在這十余年的市場培育,發(fā)展的方向始終跟隨者web用戶的腳步,用戶希望能有一種軟件能在一定區(qū)域上對(duì)信息的智能采集和加工,從而來提高工作效率,因此采集技術(shù)在不斷的更新,采集軟件也隨之備受歡迎。
。ǘ╅_發(fā)背景。如今的互聯(lián)網(wǎng),遍及全球,發(fā)展迅猛,信息在不斷的更新,Internet信息庫變得十分龐大。Web信息都是以網(wǎng)頁的形式,通過瀏覽器被用戶查看。目前搜索引擎技術(shù)發(fā)達(dá),Web用戶都會(huì)通過搜索引擎搜索關(guān)鍵詞來查找自己想要的信息,但查到的結(jié)果不盡人意,包含了很多不相關(guān)的頁面,還要自己認(rèn)真查找,因此要直接查找自己想要的精確信息非常困難。
。ㄈ┭芯恳饬x。網(wǎng)絡(luò)上的信息非常豐富,數(shù)據(jù)類型多樣,不斷更新、不斷變化,如何迅速的、準(zhǔn)確的獲取到自己需要的數(shù)據(jù),有價(jià)值的信息,變得越來越難。如何充分的利用網(wǎng)絡(luò)信息資源進(jìn)行方便快速的檢索,從而引出搜索引擎技術(shù),它們與網(wǎng)絡(luò)技術(shù)和信息技術(shù)一起,在發(fā)展和使用中逐步完善。企業(yè)及個(gè)人網(wǎng)站需要在百度上有個(gè)好的排名,就必須運(yùn)用到SEO相關(guān)的技術(shù),其中更新網(wǎng)站信息是最主要的,但這需要太多的時(shí)間與人力,該網(wǎng)絡(luò)類數(shù)據(jù)采集引擎就可以避免公司及個(gè)人的成本,并且可以提高工作效率。
二、系統(tǒng)調(diào)研與可行性分析
。ㄒ唬┈F(xiàn)狀調(diào)研。隨著網(wǎng)絡(luò)的發(fā)展,網(wǎng)絡(luò)創(chuàng)業(yè)也成了現(xiàn)在的主流。但這些離開不了搜索引擎的作用,因?yàn)橐辛髁烤偷靡琶,要有排名就得跟著各大搜索引擎的步法走,走偏了,就得受罰。不管做網(wǎng)站還是做推廣少不了信息的獲取本文由筆耕文化傳播http://www.bigengculture.com收集整理,但是獲取具有相對(duì)性高的信息是比較費(fèi)時(shí)間和人力的,因此采集引擎發(fā)揮了很大的作用并得到廣泛的應(yīng)用。
。ǘ┛尚行苑治觥,F(xiàn)在大多數(shù)的信息的采集主要是為手工處理,很多重復(fù)操作,而且是容易找到許多不相關(guān)的信息,該網(wǎng)絡(luò)類垂直搜索引擎數(shù)據(jù)采集軟件的使用是否可以解決以上問題,就要對(duì)軟件進(jìn)行可行性分析。一般軟件的可行性分析會(huì)對(duì)以下方面進(jìn)行:(1)技術(shù)可行性:程序運(yùn)行采集信息時(shí)采用的是多線程處理,使處理速度更快。(2)經(jīng)濟(jì)可行性:在設(shè)計(jì)該軟件時(shí)不需要太多的成本,也不需要太多的人力投入,需要連接網(wǎng)絡(luò)。(3)運(yùn)行上可行性:雖然本軟件使用的是多線程處理,消耗的相對(duì)比較大,但是現(xiàn)在一般的電腦都可以運(yùn)行。(4)從社會(huì)需求上分析:更新信息本來是個(gè)工作量大的工作,該軟件就可以避免這個(gè)問題,可以降低工作強(qiáng)度,提高工作效率。
三、系統(tǒng)相關(guān)技術(shù)簡介
。ㄒ唬┐怪彼阉饕。隨著互聯(lián)網(wǎng)信息的日益發(fā)展、不斷龐大,精確獲取信息的難度越來越大,那么怎樣在大量的信息中找到自己想要的信息,成為了一個(gè)迫在眉睫的問題,需要新的技術(shù)、新的理念來解決這個(gè)棘手的問題,因此搜索引擎的出現(xiàn)成為了必然,同時(shí)也開始影響著我們的需求,影響著我們的生活。由于普通的、通用的搜索引擎有著查詢的信息量很大、但目標(biāo)不夠準(zhǔn)確、有許多重復(fù)的內(nèi)容或根本無關(guān)緊要的內(nèi)容,而且搜索出的信息深度不夠等缺點(diǎn),所以為精確的搜索出需要的信息,滿足用戶的需求,從而誕生了垂直搜索引擎。
(二)搜索引擎爬蟲。搜索引擎爬蟲是一種按照一定網(wǎng)頁資源無關(guān)性、覆蓋率數(shù)據(jù)結(jié)構(gòu)型、語義檢索等自動(dòng)抓取網(wǎng)絡(luò)資源的程序,它的執(zhí)行過程和網(wǎng)絡(luò)爬行很相似。
現(xiàn)在的網(wǎng)絡(luò)信息都是以網(wǎng)頁的形式加載信息,如果這個(gè)網(wǎng)頁沒有被搜索引擎爬蟲收錄,這個(gè)網(wǎng)頁在互聯(lián)網(wǎng)上是很難找不到的,這只能通過連接直接打開,通過搜索引擎查找是不可能找到的。因?yàn)樗阉饕媾老x采集時(shí)有URL去重功能,所以提供給用戶的都是一些很有價(jià)值的信息。
(三)數(shù)據(jù)采集。網(wǎng)絡(luò)基本上所有網(wǎng)站都分為三大模板:首頁模板、內(nèi)容頁模板,列表頁模板、所以一個(gè)網(wǎng)站的列表頁、文章的HTML代碼的結(jié)構(gòu)基本相同,這就便于去根據(jù)規(guī)律采集文章信息,采集網(wǎng)頁內(nèi)容方式主要有兩種:智能提取和正則提取。
(四)站群。站群是目前比較掙錢的網(wǎng)賺項(xiàng)目之一,為了維護(hù)這些網(wǎng)站每天都得給網(wǎng)站發(fā)布一定數(shù)量的信息,如果一個(gè)網(wǎng)站發(fā)10篇,就得準(zhǔn)備至少100篇文章,這樣的工作量不可能讓人工來操作,必須要有具備采集數(shù)據(jù)功能的軟件協(xié)助,這樣就可以大大提高工作效率。
四、系統(tǒng)總體設(shè)計(jì)分析
(一)系統(tǒng)需求分析。在龐大的Internet信息寶庫中,怎樣精確獲取信息的難度越來越大,用戶也迫切的需要一個(gè)簡便的檢索工具去得到自己想要的信息,因此搜索引擎的產(chǎn)生成為了必然。搜索引擎的數(shù)據(jù)采集模塊主要是對(duì)網(wǎng)絡(luò)上原創(chuàng)性的網(wǎng)頁信息采集下來保存在數(shù)據(jù)庫中。如果該網(wǎng)頁發(fā)生了更新,數(shù)據(jù)采集模塊會(huì)檢測到后下載并對(duì)本地的舊信息進(jìn)行替換更新。因此通過剖析網(wǎng)絡(luò)垂直搜索引擎中數(shù)據(jù)采集的基本方法和運(yùn)行機(jī)制,再通過軟件來現(xiàn)實(shí)數(shù)據(jù)采集,從而可以快速解決許多重復(fù)性的勞動(dòng)問題。
(二)系統(tǒng)實(shí)現(xiàn)的目標(biāo)。本系統(tǒng)主要實(shí)現(xiàn)的目標(biāo)有以下幾個(gè)方面:(1)界面設(shè)計(jì)簡潔、美觀、直觀。(2)數(shù)據(jù)存儲(chǔ)準(zhǔn)確、安全、可靠。(3)任務(wù)運(yùn)行靈活。(4)系統(tǒng)操作性強(qiáng)、維護(hù)方便。
。ㄈ┫到y(tǒng)功能模塊設(shè)計(jì)。(1)主程序模塊:加載數(shù)據(jù)庫里面的抓取任務(wù)信息,下面的小框中就會(huì)顯示任務(wù)運(yùn)行時(shí)的抓取日志和運(yùn)行進(jìn)程的個(gè)數(shù)。(2)新建任務(wù)模塊:為程序的主要模塊,又分為四個(gè)小模塊:任務(wù)基本信息模塊、提取列表分頁模塊、提取文章地址模塊、提取文章內(nèi)容模塊。(3)文章庫模塊:查看所有抓取的文章信息。(4)系統(tǒng)設(shè)置模塊:設(shè)置每個(gè)線程執(zhí)行的間隔時(shí)間。(5)聯(lián)系方式模塊:關(guān)于系統(tǒng)的簡介及我們的聯(lián)系方式。(6)任務(wù)控制模塊:控制選中任務(wù)運(yùn)行、暫停、停止。(7)任務(wù)文章查看模塊:查看選中任務(wù)抓取的文章信息。(8)任務(wù)文章刪除模塊:刪除選中任務(wù)抓取的文章。(9)任務(wù)列表加載模塊:實(shí)現(xiàn)刷新、選定任務(wù)刪除、選定任務(wù)運(yùn)行、選定任務(wù)暫停、選定任務(wù)停止、查看選定任務(wù)文章、導(dǎo)出。(10) 加載顯示任務(wù)運(yùn)行日志模塊:顯示所有線程的運(yùn)行狀態(tài)。
。ㄋ模┫到y(tǒng)功能結(jié)構(gòu)圖。根據(jù)基于C#的網(wǎng)絡(luò)類垂直搜索引擎數(shù)據(jù)采集的實(shí)際需求,可以將網(wǎng)絡(luò)類數(shù)據(jù)采集引擎劃分為新建任務(wù)、文章庫、系統(tǒng)設(shè)置、關(guān)于我們、任務(wù)運(yùn)行、任務(wù)暫停、任務(wù)停止、指定任務(wù)文章查看、指定任務(wù)文章刪除、任務(wù)加載列表、顯示任務(wù)運(yùn)行狀態(tài)框、顯示線程數(shù)量12個(gè)部分。
(五)系統(tǒng)流程圖;贑#的網(wǎng)絡(luò)類數(shù)據(jù)采集引擎的流程是用戶先要新建自己的抓取任務(wù),依次要填寫任務(wù)名稱、采集方式、網(wǎng)站編碼、入口地址、列表URL提取正則、網(wǎng)頁URL提取正則、內(nèi)容提取方式、內(nèi)容提取正則;然后保存任務(wù),刷新加載任務(wù)列表,會(huì)顯示新建的任務(wù),運(yùn)行新建任務(wù),把抓取到的信息保存在數(shù)據(jù)庫中,同時(shí)顯示任務(wù)運(yùn)行狀態(tài)框會(huì)顯示抓取信息情況。
結(jié)語:雖然該數(shù)據(jù)采集軟件的完成了,但是凡事總是不夠完美,該軟件還有一些不足。因?yàn)樵撥浖l繁地訪問同一個(gè)服務(wù)器上的網(wǎng)頁,服務(wù)器可能會(huì)對(duì)軟件所在的電腦進(jìn)行封鎖IP,禁止在訪問,軟件將無法再抓取,因此該軟件最大的不足就是沒有實(shí)現(xiàn)切換代理IP訪問網(wǎng)頁。另外的不足就是沒有實(shí)現(xiàn)對(duì)應(yīng)發(fā)布功能,這些功能方面應(yīng)該做進(jìn)一個(gè)的完善。
參考文獻(xiàn):
- [1] 黃建蓮. 中國搜索引擎服務(wù)市場的現(xiàn)狀及發(fā)展[J]. 華北科技學(xué)院學(xué)報(bào). 2005(03)
- [2] 陳新顏. 垂直搜索引擎辨析[J]. 現(xiàn)代情報(bào). 2004(09)
- [3] 肖冬梅. 垂直搜索引擎研究[J]. 圖書館學(xué)研究. 2003(02)
- [4] 郝鳳英. 垂直網(wǎng)站及其信息服務(wù)模式[J]. 情報(bào)理論與實(shí)踐. 2002(02)
本文編號(hào):9006
本文鏈接:http://www.lk138.cn/kejilunwen/jisuanjikexuelunwen/9006.html
最近更新
教材專著