彭崧
【摘 要】本文的設計是水稻病蟲害信息的網絡爬蟲程序,通過多線程方法對特定的URL進行分析、去重,獲取到水稻病蟲害信息內容,然后將獲取的信息內容進行下載并進行分類,用戶可通過該網絡爬蟲程序下載的圖像進行水稻病蟲害圖像的研究。該網絡爬蟲程序的設計與實現(xiàn),便于人們對水稻病蟲害的技術研究和農業(yè)科技的發(fā)展。
【關鍵詞】網絡爬蟲;水稻病蟲害;多線程;搜索策略
隨著計算機和互聯(lián)網技術的不斷成熟和大量使用。怎樣快速的幫用戶在茫茫的互聯(lián)網的海洋中找到需要的信息,已經成了互聯(lián)網研究的一項重要的內容。為了讓用戶在互聯(lián)網中快速有效的進行互聯(lián)網搜索信息,一類被稱為搜索引擎的搜索工具隨之產生,給用戶和他們所要搜索的信息之間提供了一座橋梁。而搜索引擎最重要的部分是網絡爬蟲,所以網絡爬蟲為搜索功能的實現(xiàn)奠定了重要的基石。
水稻是我國最重要的食品之一,在我國種植面積很大,分布全國各個地區(qū)。而影響我國每年的水稻產量的重要因素之一就是水稻的病蟲害的發(fā)生,其控制水稻病蟲害發(fā)生的問題一直是提高水稻產量的重要且急需解決的問題。
為結合科技力量進一步加快水稻病蟲害防治的研究步伐,本文擬采用水稻病蟲害圖像網絡爬蟲搜索引擎,進一步推進水稻病蟲害研究,有效改善水稻生產,進一步地促進我國水稻病蟲害的法治,讓我國的水稻產量得到有力的提升。
1 國內外研究現(xiàn)狀
目前,基于爬蟲技術的搜索引擎在互聯(lián)網技術的飛速發(fā)展中閃耀,給農作物病蟲害防治的研究提供了技術上的支持。同時,發(fā)達國家對水稻等作物病蟲害防治情況的大力關注,越來越多的國家和機構加入使用爬蟲技術來控制病蟲害行列中來。
隨著科學技術和生活水平的提高,網絡已經成為人們生活的一部分,各種搜索引擎紛紛涌現(xiàn),作為基礎技術的爬蟲技術也越來越成熟,國內許多搜索引擎巨頭如百度,搜狗等等迅速向前推進,分別推出了各自的搜索引擎系統(tǒng)。同時,中國的“五年計劃”高度關注農業(yè)發(fā)展,使得爬蟲技術在農作物病蟲害防治的問題上越來越受到公眾的關注。
2 網絡爬蟲的定義
網絡爬蟲(也稱為蜘蛛)是一種客戶端程序或腳本,顧名思義,網絡爬蟲能像“蜘蛛”一樣在特定的范圍內獲取到所需要的信息,網絡爬蟲是根據(jù)某些特定的規(guī)則來自動抓取網絡上的信息。而且網絡爬蟲是搜索引擎的重要組成部分,通過對網頁的自動提取,能從網頁獲取到搜索引擎所需的頁面。在爬取網頁信息時,為獲取初始頁面的URL列表,需從一個或多個初始網頁的URL進行抓取,在抓取的過程中,自動將當前頁面的新URL從隊列中分類到抓取狀態(tài),直到滿足系統(tǒng)的停止條件為止。
3 水稻病蟲害圖像網絡爬蟲設計
3.1 網絡爬蟲的模型分析
首先是抓取URL鏈接地址。從URL地址抓取開始,先確定URL是否重復,然后根據(jù)預先設置的廣度來抓取圖像,搜索圖像時通過設計的算法和排序方式來進行搜索。搜索完成后將與主題相關的圖像篩選出來,然后將篩選后的圖下像載到本地中,與此同時也通過jdbc將圖像存儲到數(shù)據(jù)庫中。然后任務列表再次開始抓取URL,使網絡抓取器運行,依次循環(huán),直到要抓取的URL線程完成為止。
3.2 網絡爬蟲的搜索策略
廣度優(yōu)先搜索策略是在當前搜索級別完成之后再執(zhí)行下一級搜索。在盡可能多的頁面的覆蓋范圍內,通常使用廣度優(yōu)先搜索方法來抓取用戶所需要的信息,同時也因為該算法的設計和實現(xiàn)相對簡單。有許多研究將廣泛優(yōu)先搜索策略應用于聚焦爬網程序?;舅枷胧?,初始URL與頁面之間的距離內具有一定的鏈接與主題的相關程度很大。另一種方法是使用廣度優(yōu)先搜索和網絡過濾技術,首先采用廣度優(yōu)先策略來抓取頁面,然后不相關的頁面過濾掉。這些方法的缺點是隨著爬網數(shù)量的增加,大量不相關的頁面將被下載和過濾,并且算法的效率會降低
3.3 水稻病蟲害圖像網絡爬蟲設計
本設計通過研究異步JavaScript網絡爬蟲系統(tǒng)的關鍵技術問題,采用基于對象的程序切片算法,以及腳本執(zhí)行引擎與切片模塊的互操作技術進行設計。
將功能模塊分為前臺界面顯示和后臺數(shù)據(jù)抓取存庫。前臺界面顯示主要分為兩個部分:搜索導航部分和數(shù)據(jù)顯示部分。界面分上下兩個部分,上部分為搜索導航部分,比占40%;下部分為數(shù)據(jù)顯示部分,比占60%。上部分是用來關鍵字搜索導航,對要搜索的水稻病蟲害關鍵字進行全站搜索;下部分是用來顯示搜索到的數(shù)據(jù),用表格的形式分別顯示水稻病蟲害圖片和相關介紹信息。后臺數(shù)據(jù)抓取存庫主要分為兩個部分:抓取水稻病蟲害數(shù)據(jù)和數(shù)據(jù)存入數(shù)據(jù)庫。
通過關鍵字來獲取并下載水稻病蟲害圖像主題的網絡爬蟲程序,下載滿足客戶需求的水稻病蟲害圖像。根據(jù)用戶的不同需求,水稻病蟲害主題網絡爬蟲程序需要實現(xiàn)以下目標:基于多線程設計,下載用戶需求的所有的水稻病蟲害圖像,篩選出用戶所需要的圖像通過一定的正則表達式和算法,通過關鍵字來獲取水稻病蟲害圖像主題的一個網絡爬蟲程序,通過設定的關鍵字來爬取網絡上的圖像,并下載滿足客戶需求的圖像。
4 小結
運行爬蟲程序后,在控制臺輸入要爬取的圖像關鍵字,程序會在本地中生成一個image文件夾,文件夾內容包含html、img、txt三個文件夾,還有一個url.txt文本文件。Img文件夾是保存爬取下載的水稻病蟲害圖像,根據(jù)水稻病蟲害的分類,img文件夾中可以實現(xiàn)八類不同病蟲害圖像的文件:稻曲病圖像、稻瘟病圖像、惡苗病圖像、胡麻葉斑病圖像、霜霉病圖像、紋枯病圖像、小球菌核病圖像、葉鞘腐敗病圖像。
【參考文獻】
[1]王艷閣.主題微博爬蟲的設計與實現(xiàn)[D].中原工學院碩士論文,2013.
[2]于成龍,于洪波.網絡爬蟲技術研究[J].東莞理工學院學報,2011,18(3):25-29.
[3]曾偉輝,李淼.基于JavaScript切片的AJAX框架網絡爬蟲技術研究[J].計算機系統(tǒng)應用,2009,18(7):169-171.
[責任編輯:朱麗娜]