亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        多線程爬蟲技術(shù)在大學(xué)生作業(yè)抄襲檢測中的應(yīng)用研究

        2019-12-30 03:01:04
        關(guān)鍵詞:頁面數(shù)據(jù)庫作業(yè)

        楊 寅

        (山西職業(yè)技術(shù)學(xué)院 計算機(jī)工程系,山西 太原 030006)

        1 Python語言與網(wǎng)絡(luò)爬蟲技術(shù)

        Python是基于GPL協(xié)議的面向?qū)ο笮烷_發(fā)語言,具備強(qiáng)大的擴(kuò)展性能,不僅可以調(diào)用由其它語言開發(fā)的功能模塊,而且Python自身的編譯器也可以被集成在其它編程語言中進(jìn)行調(diào)用,非常適用于大數(shù)據(jù)分析、人工智能等結(jié)構(gòu)復(fù)雜、需要綜合運(yùn)用多種編程語言的軟件項(xiàng)目的開發(fā)中。

        網(wǎng)絡(luò)爬蟲技術(shù)(Web Crawler)起源于搜索引擎對Web頁面描述信息的自動抓取功能,網(wǎng)絡(luò)爬蟲技術(shù)的本質(zhì)是根據(jù)預(yù)設(shè)的信息檢索與過濾規(guī)則自動抓取網(wǎng)絡(luò)上的Web頁面數(shù)據(jù)的程序[1],其主要任務(wù)是從互聯(lián)網(wǎng)上的海量數(shù)據(jù)中有針對性地獲取特定目標(biāo)主題的內(nèi)容,并且以自動運(yùn)行的方式完成數(shù)據(jù)的檢索、甄別與下載、存儲,為用戶提供高質(zhì)量、高效率的數(shù)據(jù)資源積累服務(wù)。網(wǎng)絡(luò)爬蟲技術(shù)的運(yùn)行原理如圖1所示。

        網(wǎng)絡(luò)爬蟲技術(shù)的具體運(yùn)行過程如下:

        步驟1:在爬蟲程序中對信息檢索與過濾規(guī)則進(jìn)行初始化設(shè)置;

        步驟2:向Web服務(wù)器發(fā)送Url請求以獲取其Web頁面;

        步驟3:讀取Web頁面的Html完整源代碼;

        步驟4:根據(jù)預(yù)設(shè)的過濾規(guī)則對Html源碼內(nèi)容進(jìn)行甄別與篩選;

        步驟5:將獲取到的有效數(shù)據(jù)存儲至本地并建立檢索關(guān)鍵字與索引。

        2 大學(xué)生課程作業(yè)的網(wǎng)絡(luò)抄襲現(xiàn)象分析

        當(dāng)前大學(xué)生群體中消極應(yīng)對學(xué)習(xí)任務(wù)的現(xiàn)象在全國各地的高校中都普遍存在。據(jù)調(diào)查,現(xiàn)階段普通高校大學(xué)生中從未有過作業(yè)抄襲行為的占33.7%,偶爾抄襲的占49.2%,經(jīng)常抄襲的占17.1%[2]。日益嚴(yán)重的抄襲作業(yè)的現(xiàn)象不僅對高校人才培養(yǎng)質(zhì)量形成了干擾,還嚴(yán)重地影響到學(xué)校的學(xué)風(fēng)建設(shè)與誠信教育。

        網(wǎng)絡(luò)抄襲的現(xiàn)象在諸如課程論文、社會實(shí)踐報告、劇本創(chuàng)作等總結(jié)、論述類型的作業(yè)中表現(xiàn)的尤為嚴(yán)重。而作業(yè)抄襲內(nèi)容的來源主要基于百度、360等搜索引擎的檢索結(jié)果,同時為了規(guī)避教師使用搜索引擎進(jìn)行檢查,往往選用排名靠后(第10頁以后)的檢索結(jié)果進(jìn)行復(fù)制、抄襲,更增大了教師對作業(yè)抄襲行為的甄別難度與工作量。

        現(xiàn)階段,針對網(wǎng)絡(luò)抄襲問題,主要有三種解決方案:第一種是通過CNKI(即國家知識基礎(chǔ)設(shè)施)創(chuàng)建的學(xué)術(shù)不端論文檢測平臺進(jìn)行查重。該方案檢索范圍廣、分析結(jié)果全面準(zhǔn)確,但其缺點(diǎn)是成本高(需要專門購買檢索服務(wù))、耗時長(完成一次檢測需要1~2小時),目前僅被使用于高校畢業(yè)論文的查重檢測工作中;第二種是使用以Paperpass為代表的中文文獻(xiàn)相似度對比系統(tǒng)進(jìn)行檢索。該方案的檢索效率要遜于CNKI的論文檢測平臺,但是在成本和響應(yīng)時間方面具備明顯優(yōu)勢,當(dāng)前在期刊論文檢測中被廣泛使用,但作為付費(fèi)型系統(tǒng),仍無法在高校的日常教學(xué)過程中被廣泛應(yīng)用;第三種方案是使用人工方式通過搜索引擎對學(xué)生提交的作業(yè)內(nèi)容進(jìn)行逐一檢索。這種方案耗時長、效率低且精確度差,但由于受到成本限制,大部分任課教師不得不將其作為當(dāng)前課程作業(yè)抄襲檢測的主要方式[3]。

        針對當(dāng)前大學(xué)生課程作業(yè)的網(wǎng)絡(luò)抄襲現(xiàn)象的特點(diǎn)、數(shù)據(jù)來源以及教師在抄襲檢測方面遇到的困境。本文嘗試構(gòu)建了基于網(wǎng)絡(luò)爬蟲技術(shù)的作業(yè)抄襲分析系統(tǒng),充分發(fā)揮爬蟲技術(shù)在基于搜索引擎的數(shù)據(jù)抓取方面的巨大優(yōu)勢,在零使用成本的前提下提供較高精準(zhǔn)度與高效率的網(wǎng)絡(luò)抄襲分析服務(wù),以有效地解決當(dāng)前課程作業(yè)抄襲檢測工作中遇到的問題。

        3 基于網(wǎng)絡(luò)爬蟲技術(shù)構(gòu)建的作業(yè)抄襲檢測系統(tǒng)模型

        3.1 工作流程分析

        網(wǎng)絡(luò)抄襲檢測的工作過程基于對搜索引擎檢索結(jié)果(即作業(yè)抄襲的主要信息來源)的讀取與分析來展開,具體內(nèi)容包括待檢測數(shù)據(jù)的采集、關(guān)鍵詞的獲取、調(diào)用搜索引擎檢索網(wǎng)絡(luò)數(shù)據(jù)、比對并分析結(jié)果等幾個步驟,其詳細(xì)流程如圖2所示。

        圖2 網(wǎng)絡(luò)抄襲檢測系統(tǒng)的工作流程Fig.2 Work flow of the network plagiarism detection system

        3.2 系統(tǒng)框架及主要模塊

        本文所構(gòu)建的網(wǎng)絡(luò)抄襲檢測系統(tǒng)模型,主要由作業(yè)文檔提交、作業(yè)文檔內(nèi)容分析、網(wǎng)絡(luò)爬蟲檢索、分析結(jié)果管理與系統(tǒng)數(shù)據(jù)庫5個模塊構(gòu)成,其框架如圖3所示。

        圖3 網(wǎng)絡(luò)抄襲檢測系統(tǒng)的整體框架Fig.3 The overall framework of the network plagiarism detection system

        由圖3可知,構(gòu)建于底層數(shù)據(jù)庫之上的網(wǎng)絡(luò)抄襲檢測系統(tǒng),主要由4個模塊負(fù)責(zé)完成其工作,其中的作業(yè)提交模塊負(fù)責(zé)作業(yè)基本信息(作者的姓名、學(xué)號、課程作業(yè)名稱等)在系統(tǒng)數(shù)據(jù)庫中的記錄以及作業(yè)文檔的上傳,而考慮到當(dāng)前微軟Office軟件的廣泛普及與Python語言對Word文檔的強(qiáng)大處理能力,向系統(tǒng)中提交的作業(yè)文檔均應(yīng)以Word文檔的格式進(jìn)行上傳,在上傳完成后由Python編寫的作業(yè)文檔分析模塊對文檔內(nèi)容進(jìn)行識別,提取其中的關(guān)鍵詞,并將信息存儲至系統(tǒng)數(shù)據(jù)庫中;網(wǎng)絡(luò)爬蟲模塊是系統(tǒng)的核心部分,負(fù)責(zé)將存儲于數(shù)據(jù)庫中的待檢測作業(yè)信息逐一讀取后構(gòu)建爬蟲程序的信息檢索與過濾規(guī)則,并以此為基礎(chǔ)啟動爬蟲程序,基于搜索引擎的檢索結(jié)果對網(wǎng)絡(luò)中的相近內(nèi)容進(jìn)行比對與分析,最后生成檢索分析結(jié)果,并存入系統(tǒng)數(shù)據(jù)庫中;系統(tǒng)最終根據(jù)這些分析結(jié)果信息自動創(chuàng)建作業(yè)抄襲分析報告,并通過分析結(jié)果管理模塊直觀地呈現(xiàn)給用戶。

        3.3 關(guān)鍵實(shí)現(xiàn)過程的分析

        3.3.1上傳文檔過程的實(shí)現(xiàn)

        待檢測的作業(yè)以Word文檔(即Docx后綴名)格式進(jìn)行上傳,使用PHP語言實(shí)現(xiàn)。關(guān)鍵代碼及說明如下:

        if ($-FILES["docx-file"]["error"]> 0)//上傳文件并檢測是否出現(xiàn)錯誤

        echo "upload error..";

        else

        if($-FILES["docx-file"]["type"]=="docx")//判斷文件類型是否為Docx

        {$docx-url=$-FILES["file"]["tmp-name"];//獲取PHP的臨時文件存儲位置

        move-uploaded-file($docx-url, "upload/".time());}//保存文件并以當(dāng)前時間命名

        else

        echo "file type error..";

        3.3.2文檔分析過程的實(shí)現(xiàn)

        對Word文檔內(nèi)容的解析使用Python語言的Python-docx模塊來實(shí)現(xiàn)。關(guān)鍵代碼及說明如下:

        import docx//引入Python-docx模塊

        import MySQLdb//引入數(shù)據(jù)庫訪問模塊

        doc-obj=docx.Document('filepath')//讀取指定的Word文件內(nèi)容

        n=len(doc-obj.paragraphs)//獲取文件中的段落總數(shù)

        for i in range(len(n))://逐一處理文檔中所有段落內(nèi)容

        para=doc-obj.Paragraphs[i]

        strat-txt=print para.Range.text[0:10]//獲取每個段落中前10個字符

        end-txt=print para.Range.text[-10:]//獲取每個段落中后10個字符

        data-insert(i,strat-txt, end-txt)//將段落序號與字符內(nèi)容插入數(shù)據(jù)庫中

        def data-insert (i,starts,ends)://數(shù)據(jù)庫訪問函數(shù)

        data-obj=MySQLdb.connect("訪問地址", "賬號", "密碼", "庫名稱", charset='utf8')

        //創(chuàng)建與數(shù)據(jù)庫的連接

        cs-obj=data-obj.cursor()//創(chuàng)建數(shù)據(jù)庫操作游標(biāo)

        sql-txt='Insert Into tabelname Values('+i+','+starts+','+ends+')'//構(gòu)建Sql命令

        cs-obj.execute(sql-txt)//執(zhí)行Sql命令

        cs-obj.close()//關(guān)閉數(shù)據(jù)庫連接

        3.3.3多線程網(wǎng)絡(luò)爬蟲的實(shí)現(xiàn)

        import re

        import time

        import requests

        from concurrent.futures import ThreadPoolExecutor

        thd-obj=ThreadPoolExecutor(10)//構(gòu)建線程量為10的線程池;

        def crawler(txt)://爬蟲主程序

        brow-obj=webdriver.Chrome()

        brow-obj.get('http://www.baidu.com')//訪問百度主頁

        control-obj=brow-obj.find-element-by-id("kw")//定位輸入框

        control-obj.send-keys("txt")//輸入檢索字符

        bott-obj=brow-obj.find-element-by-id("su")//定位搜索按鈕

        bott-obj.click()//開始檢索數(shù)據(jù)

        time.sleep(3)//等待檢索結(jié)果

        manipulation();//調(diào)用處理數(shù)據(jù)函數(shù)

        while next-web://使用循環(huán)逐頁處理檢索結(jié)果

        try:

        hlink-obj=brow-obj.find-element-by-link-text("下一頁>")//定位’下一頁’超鏈接

        hlink-obj.click()//打開下一頁

        time.sleep(2)//等待打開頁面

        manipulation();//調(diào)用搜索結(jié)果頁面處理函數(shù)

        except:

        break//已完成最后一頁的處理,結(jié)束循環(huán)

        def manipulation(txt)://搜索結(jié)果頁面處理函數(shù)

        response=urllib.request.urlopen()

        code=response.read()//獲取當(dāng)前頁面的Html源碼

        urllist=[]

        urllist=getpageurl(code)//獲取當(dāng)前頁面中的Url地址集合

        analysed(urlist,txt)//調(diào)用Url地址內(nèi)容處理函數(shù)

        def analysed(urlist,txt):

        code-obj=GetHtml.GetHtml

        for u in urllist:

        codes=code-obj.getHtml(u)//獲取源代碼

        if(string.find(codes,txt))//檢測源碼中是否包含論文中的關(guān)鍵字

        data-insert2 (u,txt)//將Url和關(guān)鍵詞插入數(shù)據(jù)庫中

        def data-insert2 (u,txt):

        dataurl-obj=data-obj.cursor()

        sql-cmd='Insert Into tabelname Values('+u+','+txt+')'

        dataurl-obj.execute(sql-cmd)//執(zhí)行SQL命令

        dataurl-obj.close()//關(guān)閉數(shù)據(jù)庫連接

        for n in range(10):

        sel-txt=cursor.fetchone()//讀取當(dāng)前數(shù)據(jù)并將游標(biāo)指針移至下一條數(shù)據(jù)

        thd-obj.submit(crawler,sel-txt,n).add-done-callback(crawler)//將任務(wù)提交到線程池

        4 結(jié)論

        大學(xué)生作業(yè)抄襲現(xiàn)象的泛濫,不僅不利于其個人素質(zhì)及能力的培養(yǎng),更對學(xué)校的學(xué)風(fēng)、人文環(huán)境建設(shè)造成負(fù)面影響。矯正作業(yè)抄襲的問題,需要涉及到學(xué)風(fēng)、評價體系構(gòu)建、誠信教育等諸多方面。本文從技術(shù)角度出發(fā),針對作業(yè)抄襲的主要信息來源(搜索引擎)構(gòu)建了基于網(wǎng)絡(luò)爬蟲技術(shù)的作業(yè)抄襲檢測系統(tǒng)模型,該系統(tǒng)具有良好的可行性、實(shí)用性以及部署運(yùn)行簡便、零使用成本的優(yōu)勢,希望在預(yù)防和克服學(xué)生作業(yè)抄襲的方面能夠?yàn)閺V大教師提供有益的幫助。

        猜你喜歡
        頁面數(shù)據(jù)庫作業(yè)
        大狗熊在睡覺
        刷新生活的頁面
        快來寫作業(yè)
        數(shù)據(jù)庫
        財經(jīng)(2017年2期)2017-03-10 14:35:35
        作業(yè)
        故事大王(2016年7期)2016-09-22 17:30:08
        數(shù)據(jù)庫
        財經(jīng)(2016年15期)2016-06-03 07:38:02
        數(shù)據(jù)庫
        財經(jīng)(2016年3期)2016-03-07 07:44:46
        數(shù)據(jù)庫
        財經(jīng)(2016年6期)2016-02-24 07:41:51
        我想要自由
        同一Word文檔 縱橫頁面并存
        久久久精品国产老熟女| 欧美午夜一区二区福利视频| 精品人妻VA出轨中文字幕| 成人综合亚洲国产成人| 狼人伊人影院在线观看国产| 人妻少妇精品视频三区二区一区| 天天爽天天爽天天爽| 亚洲无码中文字幕日韩无码| 国产午夜精品视频观看| 国产果冻豆传媒麻婆精东 | 成年女人毛片免费观看97| av天堂线上| 日韩av免费一区二区| 国模吧无码一区二区三区 | 天天躁日日躁狠狠躁| 中国人在线观看免费的视频播放| 亚洲乱亚洲乱妇50p| 国产一区二区波多野结衣| 视频一区视频二区亚洲免费观看 | 国产亚洲真人做受在线观看| 国产99re在线观看只有精品| 手机在线观看亚洲av| 女优一区二区三区在线观看| 国产亚洲精品aaaa片小说| 精品欧美久久99久久久另类专区| 日本一区二区三区精品不卡| 天天做天天爱夜夜爽毛片毛片| 成人网站免费大全日韩国产| AV无码免费不卡在线观看| 青青草手机视频免费在线播放| 狠狠的干性视频| 伊人婷婷在线| 亚洲av一区二区网址| 国语自产视频在线| 国产精品国产三级国产av′| 中文字幕有码高清| 日韩在线精品视频一区| 中文字幕v亚洲日本| 亚洲国产精品午夜电影| 国产成人精品一区二区三区av | 无码少妇一区二区性色av |