999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Scrapy的番茄病蟲害數(shù)據(jù)收集

2019-03-25 08:01:52徐鄭琴
電腦知識(shí)與技術(shù) 2019年3期
關(guān)鍵詞:計(jì)算機(jī)技術(shù)

徐鄭琴

摘要:在番茄病蟲害防治中常常出現(xiàn)因資料分散而導(dǎo)致的信息獲取不全或是利用效率低等問題,為此提出利用計(jì)算機(jī)技術(shù)設(shè)計(jì)一套針對(duì)開放網(wǎng)絡(luò)上的多方數(shù)據(jù)進(jìn)行收集與整理的方法。該方法基于Scrapy框架依次確定爬取對(duì)象、設(shè)計(jì)爬取流程、分析原始網(wǎng)頁、存儲(chǔ)相關(guān)數(shù)據(jù),最后依托Django框架搭建可視化界面用于前端與后臺(tái)的數(shù)據(jù)交互。由此實(shí)現(xiàn)了對(duì)各類數(shù)據(jù)的有效收集和按規(guī)則的結(jié)構(gòu)化存儲(chǔ),為在番茄病蟲害領(lǐng)域搭建系統(tǒng)、專業(yè)的知識(shí)庫提供數(shù)據(jù)依據(jù)。

關(guān)鍵詞: 番茄病蟲害;計(jì)算機(jī)技術(shù);Scrapy;Django;結(jié)構(gòu)化存儲(chǔ)

中圖分類號(hào):TP311? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? 文章編號(hào):1009-3044(2019)03-0024-02

Abstract: In the prevention and control of tomato pest and disease, the problems of incomplete information acquisition or low utilization efficiency caused by data dispersion often occur. Therefore, it is proposed to use computer technology to design a set of methods for collecting and sorting out multi-party data on open networks. The method is based on the Scrapy framework to determine the crawling object, design the crawling process, analyze the original webpage, store the relevant data, and finally build a visual interface based on the Django framework for data interaction between the front end and the background. This achieves effective collection of various types of data and structured storage according to rules, providing data basis for building a systematic and professional knowledge base in the field of tomato pest and disease.

Key words: tomato pest and disease; computer technology; Scrapy; Django; structured storage

1 概述

在可持續(xù)發(fā)展背景下,為提升農(nóng)業(yè)產(chǎn)量提出精準(zhǔn)農(nóng)業(yè)概念。番茄作為一種種植較為普遍的蔬果類作物,深受人們的喜愛,但在番茄種植過程中,病蟲害的防治是十分關(guān)鍵的環(huán)節(jié)[1]。如何在擴(kuò)大種植面積的同時(shí),對(duì)病蟲害進(jìn)行有效防治甚是關(guān)鍵。與以往單純依賴經(jīng)驗(yàn)進(jìn)行病蟲害識(shí)別相比,精準(zhǔn)農(nóng)業(yè)背景下依靠知識(shí)庫的番茄病蟲害防治有以下優(yōu)勢(shì):一、專業(yè)性較強(qiáng)的數(shù)據(jù)庫,不受地域及種植者本身經(jīng)驗(yàn)限制,適用于大范圍普及,可實(shí)時(shí)更新。二、利用Scrapy的優(yōu)勢(shì),將大量分散的資料集合到一起,圖片和文字結(jié)合存儲(chǔ),并直觀地為種植者提供最新即時(shí)的救治建議。因此,本文針對(duì)番茄病蟲害進(jìn)行一系列工作,基于Scrapy框架對(duì)數(shù)據(jù)進(jìn)行爬取并存儲(chǔ)。

2 Scrapy爬蟲框架

Scrapy是一個(gè)目的為了爬取網(wǎng)站內(nèi)容,提取結(jié)構(gòu)性數(shù)據(jù)而編寫的開源爬蟲應(yīng)用框架,可以應(yīng)用在包括數(shù)據(jù)挖掘、信息處理或者存儲(chǔ)歷史數(shù)據(jù)等一系列的程序中[2]。其框架主要由Scrapy Engine、Scheduler、Downloader、Spiders、Item Pipeline五部分組成,如圖1。Scrapy是純 Python 實(shí)現(xiàn)的應(yīng)用爬蟲框架,基于Twist的異步處理,使用起來相對(duì)簡(jiǎn)單輕巧[3]。

其中,Scrapy Engine指引擎,負(fù)責(zé)數(shù)據(jù)和信號(hào)在不同模塊間的傳輸,是整個(gè)框架的核心;Scheduler指調(diào)度器,用于接收引擎發(fā)送過來的爬蟲任務(wù),并按照一定規(guī)則將它放入待爬取隊(duì)列;Downloader指下載器,負(fù)責(zé)下載Requests請(qǐng)求,并將Responses返回給引擎,該部分采用異步方式與遠(yuǎn)程服務(wù)器建立聯(lián)系,大大提高了爬取效率;Spiders指爬蟲,處理引擎發(fā)送過來的Response,提取數(shù)據(jù)和URL,并將結(jié)果返回給引擎;Item Pipeline指管道,用于進(jìn)一步處理Spiders發(fā)送過來的數(shù)據(jù),例如數(shù)據(jù)清洗、持久化存儲(chǔ)等。用戶可在Spiders和Pipeline中根據(jù)需求自定義所需爬蟲及存儲(chǔ)位置。

2 數(shù)據(jù)爬取

2.1 確定爬取對(duì)象

番茄病蟲害數(shù)據(jù)分布于各大農(nóng)業(yè)及百科類網(wǎng)站,可分為結(jié)構(gòu)化數(shù)據(jù)、半結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)三種。利用爬取到的數(shù)據(jù)為農(nóng)業(yè)從業(yè)人員提供防御和治療依據(jù)是數(shù)據(jù)收集的目的,因此確定以番茄病蟲害名稱、癥狀描述、發(fā)病特征、治療方法、圖片為主的爬取對(duì)象。但番茄病蟲害的命名方式在開源網(wǎng)絡(luò)上的存在不統(tǒng)一性,例如“番茄芽枯病”與“西紅柿芽枯病”這類同類不同名的命名、“番茄有害氣體”這類概括性命名等,這將導(dǎo)致對(duì)多源數(shù)據(jù)進(jìn)行直接爬取后的數(shù)據(jù)冗余、缺失問題,因此,在比較各方網(wǎng)站后,確定先以農(nóng)業(yè)醫(yī)院網(wǎng)為主,百度百科、互動(dòng)百度為輔,整合番茄病蟲害名稱,再進(jìn)行后續(xù)爬取。

2.2 設(shè)計(jì)爬取流程

根據(jù)確定的番茄病蟲害名稱,從多方數(shù)據(jù)源中爬取所需數(shù)據(jù),以在互動(dòng)百科為例,設(shè)計(jì)數(shù)據(jù)爬取流程,如圖2。

系統(tǒng)先根據(jù)番茄病蟲害名稱對(duì)互動(dòng)百科詞條的初始URL進(jìn)行解析,響應(yīng)內(nèi)容包括URL和數(shù)據(jù)。URL解析時(shí),相關(guān)模塊會(huì)基于定義的HTML規(guī)則將該頁面中所包含的其他詞條URL保存至詞條URL庫中[4]。系統(tǒng)不斷地對(duì)詞條URL庫中的URL進(jìn)行解析,并將獲取到的數(shù)據(jù)內(nèi)容存儲(chǔ)在csv文件中。

2.3 網(wǎng)頁對(duì)象分析

Web網(wǎng)頁是結(jié)構(gòu)化的,網(wǎng)頁中的任何內(nèi)容都處于結(jié)構(gòu)體中,因此可以在結(jié)構(gòu)體的路徑中查詢到[5]。以番茄褐色根腐病在互動(dòng)百科中的詞條為例,詞條條目包括名稱、簡(jiǎn)介、基本信息、危害癥狀等。利用Chrome瀏覽器的F12快捷鍵,可以查看與詞條的條目一一對(duì)應(yīng)的源代碼、在網(wǎng)頁中的結(jié)構(gòu)體路徑,如圖3所示。在此基礎(chǔ)上,利用xpath定位到詞條中的元素、屬性、文本等節(jié)點(diǎn),從而獲取所需部分。例如,利用以下語句可提取到番茄褐色根腐病簡(jiǎn)介部分的文字,其中的定位方式為選擇標(biāo)簽是div且類屬性依次為w-990、l w-640、information、summary下的文字段落。

3 數(shù)據(jù)存儲(chǔ)

數(shù)據(jù)存儲(chǔ)是將數(shù)據(jù)可視化的前一步驟,選擇合適的數(shù)據(jù)庫和數(shù)據(jù)存儲(chǔ)方式將直接影響到前端網(wǎng)頁搭建時(shí)的煩瑣程度。由于本文爬取的數(shù)據(jù)內(nèi)容中不僅包含文字,同時(shí)還大量包含圖片這一類型數(shù)據(jù),并且圖片這類數(shù)據(jù)將作為后期工作的核心,因此本文采用了非關(guān)系型數(shù)據(jù)庫Neo4j。目前主流關(guān)系型數(shù)據(jù)庫管理系統(tǒng)有:SQL Server、MySQL、Oracle等[6]。與關(guān)系型數(shù)據(jù)庫不同,非關(guān)系型數(shù)據(jù)庫在處理圖片、文檔、電子郵件等非結(jié)構(gòu)化數(shù)據(jù)存在較多優(yōu)勢(shì)。為了讓數(shù)據(jù)存儲(chǔ)更具有條理性,以及更方便靈活地被使用。在存儲(chǔ)過程中,對(duì)番茄病蟲害名稱以及圖片進(jìn)行編號(hào)存儲(chǔ),并以編號(hào)作為主鍵,增設(shè)唯一約束。名稱的編號(hào)采用五位數(shù)字形式,前兩位代表發(fā)病部位(01,根;02,果實(shí);03,莖;04,葉子),發(fā)病部位由手動(dòng)區(qū)分,后三位代表相同發(fā)病部位下的不同番茄病蟲害名稱,例如,0100101。圖片的編號(hào)方式采用七位數(shù)字形式,在名稱編號(hào)的末尾增加兩位,表示同一番茄病蟲害的不同圖片,例如,0100101。編號(hào)存儲(chǔ)的形式使數(shù)據(jù)之間的聯(lián)系性增強(qiáng)。最后,即可將存儲(chǔ)在本地的csv文件導(dǎo)入數(shù)據(jù)庫。

4 數(shù)據(jù)應(yīng)用

通過上述一系列步驟,我們將分散在互聯(lián)網(wǎng)各處的有關(guān)番茄病蟲害的非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行了梳理整合,通過Scrapy技術(shù)將其以結(jié)構(gòu)化的形式存儲(chǔ)于數(shù)據(jù)庫中。然而對(duì)于目標(biāo)人群,例如農(nóng)技人員、普通種植戶等,依舊無法直接對(duì)數(shù)據(jù)進(jìn)行查看甚至利用。因此,本文利用Django網(wǎng)頁框架為用戶搭建了番茄病蟲害搜索界面,從而方便目標(biāo)人群使用及幫助完善。Django 框架是基于Python語言編寫的一個(gè)開源免費(fèi)的Web應(yīng)用框架[7]。在用戶輸入界面中提供了兩種查詢方式,包括按病蟲害名稱查詢和按發(fā)病部位查詢,在單擊查詢后即可獲取相應(yīng)的搜索結(jié)果。

4.1 按名稱搜索

圖4以番茄褐色根腐病為例展示了按病蟲害名稱的搜索結(jié)果。利用用戶輸入的名稱關(guān)鍵字,在數(shù)據(jù)庫中進(jìn)行關(guān)鍵字匹配,返回存儲(chǔ)在數(shù)據(jù)庫中相對(duì)應(yīng)的結(jié)果,結(jié)果包含名稱、發(fā)病部位、癥狀描述、特征、治療措施等,并以知識(shí)卡片的形式呈現(xiàn)給用戶。

4.2 按部位搜索

圖5以果實(shí)為例展示了按部位的搜索結(jié)果。番茄病蟲害的發(fā)病部位主要包括根、莖、葉、果實(shí)四大類,根據(jù)用戶的選擇,返回所有存儲(chǔ)在數(shù)據(jù)庫中有關(guān)該部位的所有病蟲害名稱。在此接口中,可以查詢到所有番茄病蟲害的名稱。

5 結(jié)論

本文重點(diǎn)以番茄病蟲害為例從多方面具體介紹了Scrapy爬蟲的方法。番茄病蟲害的防治重點(diǎn)在于作物種植的有效監(jiān)控和科學(xué)治理[8]。將爬蟲技術(shù)合理應(yīng)用于番茄病蟲害防治的前期工作中,進(jìn)一步推動(dòng)番茄病蟲害數(shù)據(jù)的信息化與規(guī)范化,以便為日后應(yīng)用打下基礎(chǔ),從而也促進(jìn)農(nóng)業(yè)作物的數(shù)據(jù)化發(fā)展。與此同時(shí),收集到的數(shù)據(jù)可應(yīng)用于多方面。例如,利用圖片特征結(jié)合名稱標(biāo)注,建立了能夠完成病種判別的神經(jīng)網(wǎng)絡(luò);利用文字信息歸納總結(jié)針對(duì)同種作物病害不同救治方法或不同作物同種救治方法;甚至可以考慮結(jié)合智能化機(jī)器,利用機(jī)器可以完成自動(dòng)化監(jiān)測(cè)、對(duì)農(nóng)作物進(jìn)行智能化保護(hù)、針對(duì)性變量噴藥、病害遠(yuǎn)程診斷等,真正達(dá)到精準(zhǔn)農(nóng)業(yè)的目標(biāo)。

參考文獻(xiàn):

[1] 吳軍,倪萌,夏倩,等. 江蘇無錫市設(shè)施番茄病蟲害發(fā)生特點(diǎn)與綠色防控策略[J].中國園藝文摘,2017,33(10):195-197.

[2] 安子建. 基于Scrapy框架的網(wǎng)絡(luò)爬蟲實(shí)現(xiàn)與數(shù)據(jù)抓取分析[D].長春:吉林大學(xué),2017.

[3] 孫小越,王超.基于Scrapy框架的電商數(shù)據(jù)分析平臺(tái)[J].電腦知識(shí)與技術(shù),2017,13(28):276-278.

[4] 鄂世嘉,林培裕,向陽.自動(dòng)化構(gòu)建的中文知識(shí)圖譜系統(tǒng)[J].計(jì)算機(jī)應(yīng)用,2016,36(4):992-996+1001.

[5] 李喬宇,尚明華,王富軍,等.基于Scrapy的農(nóng)業(yè)網(wǎng)絡(luò)數(shù)據(jù)爬取[J].山東農(nóng)業(yè)科學(xué),2018,50(1):142-147.

[6] 肖慶都,屈亮亮,侯霞.基于Neo4j圖數(shù)據(jù)庫的課程體系知識(shí)圖譜系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2017,13(36):130-132.

[7] 楊君,陳春玲,余瀚.基于Scrapy技術(shù)的數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2018,28(10):177-181.

[8] 余世英.病蟲害防治技術(shù)在番茄種植過程中的應(yīng)用分析 [J].農(nóng)家科技,2016(11):105.

【通聯(lián)編輯:謝媛媛】

猜你喜歡
計(jì)算機(jī)技術(shù)
論通信技術(shù)與計(jì)算機(jī)技術(shù)融合發(fā)展
企業(yè)計(jì)算機(jī)技術(shù)的應(yīng)用及控制管理
辦公自動(dòng)化中計(jì)算機(jī)技術(shù)的應(yīng)用
計(jì)算機(jī)圖形技術(shù)在環(huán)境監(jiān)測(cè)中的運(yùn)用
計(jì)算機(jī)技術(shù)在財(cái)務(wù)會(huì)計(jì)中的運(yùn)用
淺談?dòng)?jì)算機(jī)技術(shù)在機(jī)電一體化專業(yè)中的應(yīng)用
關(guān)于計(jì)算機(jī)科學(xué)與技術(shù)未來發(fā)展趨勢(shì)的相關(guān)探討
探討辦公自動(dòng)化中的計(jì)算機(jī)技術(shù)應(yīng)用
科技視界(2016年18期)2016-11-03 23:29:16
分析計(jì)算機(jī)互聯(lián)網(wǎng)信息安全的防御技術(shù)
基于矩陣LU分解的并行處理
主站蜘蛛池模板: 亚洲欧洲日韩综合色天使| 国产区福利小视频在线观看尤物| 亚洲国产精品人久久电影| 欧美日韩福利| 久久香蕉国产线看观看亚洲片| 亚洲午夜18| 91福利片| 激情综合网址| 国产免费羞羞视频| 欧美一区二区自偷自拍视频| 久久久久久久97| 日韩麻豆小视频| 欧美www在线观看| 欧美日韩在线成人| 久久久久亚洲AV成人人电影软件| 思思99思思久久最新精品| 亚洲国产精品不卡在线| 成人免费黄色小视频| 亚洲侵犯无码网址在线观看| 日韩精品高清自在线| 性喷潮久久久久久久久| 久久精品日日躁夜夜躁欧美| 欧美一区二区精品久久久| 大香网伊人久久综合网2020| 国产精品白浆在线播放| 欧美国产菊爆免费观看| 国产亚洲精| 无码丝袜人妻| 在线观看无码av免费不卡网站 | 亚洲无码A视频在线| 亚洲区第一页| 91视频精品| 国产精品乱偷免费视频| 91蜜芽尤物福利在线观看| 亚洲Va中文字幕久久一区| 亚洲三级片在线看| 亚洲精品图区| 伊人福利视频| 国产美女免费网站| 亚洲色大成网站www国产| 日韩中文字幕免费在线观看| 99热这里都是国产精品| 91精品国产一区自在线拍| 国产人在线成免费视频| 国产视频入口| 99久久精品无码专区免费| 欧美国产日韩在线观看| 国产欧美自拍视频| 日韩精品一区二区深田咏美| 亚洲男人的天堂久久精品| 午夜久久影院| 亚洲第一福利视频导航| 99久久免费精品特色大片| 原味小视频在线www国产| 午夜性爽视频男人的天堂| 一级毛片基地| 国产成人精品亚洲日本对白优播| 日韩欧美色综合| 久草视频中文| h视频在线观看网站| 日韩高清无码免费| 亚洲人成网址| 国产精品lululu在线观看 | 九色在线观看视频| 亚洲精品图区| 久久久精品无码一区二区三区| 香蕉视频在线精品| 一区二区自拍| 99在线视频精品| 久久久黄色片| 精品国产污污免费网站| 精品人妻无码中字系列| 老司机aⅴ在线精品导航| 欧亚日韩Av| 欧美视频在线不卡| 久久久精品久久久久三级| 欧美成人免费一区在线播放| 91色爱欧美精品www| 真实国产乱子伦视频| 亚洲一区免费看| 久草国产在线观看| 无码精品一区二区久久久|