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

        ?

        基于Python爬蟲的比賽信息查詢交流系統(tǒng)設(shè)計(jì)

        2020-07-22 12:00:14
        無(wú)線互聯(lián)科技 2020年9期
        關(guān)鍵詞:源代碼爬蟲管理器

        楊 雄

        (西北民族大學(xué),甘肅 蘭州 730000)

        據(jù)人力資源和社會(huì)保障統(tǒng)計(jì),每年高校畢業(yè)生高達(dá)數(shù)萬(wàn),勢(shì)必會(huì)造成巨大的就業(yè)壓力,能否找到心儀的工作還得靠自身的能力,不僅取決于是否具有畢業(yè)證和學(xué)位證,還取決于在校時(shí)獲得的其他證書及平時(shí)的各類成績(jī)。獲得相應(yīng)的證書可以直觀地反應(yīng)個(gè)人的能力大小,例如:獲得華為主辦的中國(guó)區(qū)大學(xué)生ICT大賽、國(guó)際計(jì)算機(jī)協(xié)會(huì)主辦的ACM國(guó)際大學(xué)生程序設(shè)計(jì)競(jìng)賽、中國(guó)工業(yè)與應(yīng)用數(shù)學(xué)學(xué)會(huì)舉辦的大學(xué)生數(shù)學(xué)建模比賽、武漢大學(xué)主辦的全國(guó)大學(xué)生化學(xué)實(shí)驗(yàn)競(jìng)賽等比賽的證書將會(huì)在面試時(shí)為學(xué)生帶來(lái)更大的信心。但是據(jù)調(diào)查顯示,很多人都不知道這些賽事的舉辦時(shí)間及內(nèi)容等。通過(guò)Python網(wǎng)絡(luò)爬蟲技術(shù)將比賽信息抓取到MySQL數(shù)據(jù)庫(kù)中,可以方便用戶進(jìn)行查詢及關(guān)注。

        目前發(fā)現(xiàn)已經(jīng)使用的與Python爬取比賽信息有關(guān)的系統(tǒng)或APP,具有如下特點(diǎn):(1)以Python技術(shù)作為基礎(chǔ)進(jìn)行開發(fā),綜合應(yīng)用了Python網(wǎng)絡(luò)函數(shù)庫(kù)。(2)以盈利為目的。(3)銷售有關(guān)比賽的書籍及課程。

        通過(guò)問(wèn)卷調(diào)查及走訪高校同學(xué)發(fā)現(xiàn)如下問(wèn)題:(1)只知道四六級(jí)及計(jì)算機(jī)二級(jí)之類常規(guī)考試。(2)對(duì)將來(lái)找工作是否應(yīng)該具有更多的證書概念模糊。(3)更多的同學(xué)對(duì)比賽的時(shí)間、地點(diǎn)等不清楚,更不知道怎么去復(fù)習(xí)。(4)找不到一起參加比賽的隊(duì)友,一個(gè)人不想?yún)⒓颖荣惖取?/p>

        對(duì)于上述問(wèn)題,需研發(fā)一個(gè)系統(tǒng)來(lái)解決,這個(gè)系統(tǒng)具有以下的特點(diǎn):(1)通過(guò)Python爬蟲技術(shù)抓取相關(guān)比賽信息。(2)實(shí)現(xiàn)抓取信息定制化。(3)實(shí)現(xiàn)信息查詢功能。(4)可以相互交流并尋找參賽隊(duì)友。

        此系統(tǒng)實(shí)現(xiàn)爬取過(guò)程比較簡(jiǎn)單,先明確初始網(wǎng)頁(yè)的統(tǒng)一資源定位符(URL),找到數(shù)據(jù)對(duì)應(yīng)的網(wǎng)頁(yè),分析網(wǎng)頁(yè)結(jié)構(gòu),找到數(shù)據(jù)所在標(biāo)簽位置,模擬超文本傳輸協(xié)議(HTTP)請(qǐng)求,并向服務(wù)器發(fā)送這個(gè)請(qǐng)求,獲取到服務(wù)器返回的超文本標(biāo)記語(yǔ)言(HTML),傳遞給數(shù)據(jù)解析模塊之后,將URL放進(jìn)已經(jīng)爬取的URL隊(duì)列中,數(shù)據(jù)解析模塊解析收到的HTML之后,通過(guò)正則表達(dá)式來(lái)處理所要爬取的具體內(nèi)容,系統(tǒng)具體框架如圖1所示。

        圖1 系統(tǒng)具體框架

        1 關(guān)鍵技術(shù)概述

        1.1 網(wǎng)絡(luò)爬蟲

        所謂網(wǎng)絡(luò)爬蟲[1-2],就是一段自動(dòng)抓取互聯(lián)網(wǎng)信息的程序,從互聯(lián)網(wǎng)上抓取有價(jià)值的信息,就像一張蜘蛛網(wǎng),順著這張網(wǎng)爬行,每到一個(gè)網(wǎng)頁(yè)就用抓取程序?qū)⒕W(wǎng)頁(yè)抓下來(lái),將內(nèi)容抽取出來(lái),同時(shí)抽取超鏈接,作為進(jìn)一步爬行的線索。

        1.2 Pythpn爬蟲及架構(gòu)

        Python爬蟲是按一定的規(guī)則自動(dòng)爬取瀏覽器中信息的程序及腳本,也就是獲取Web頁(yè)面上自己想要的數(shù)據(jù);爬蟲架構(gòu)主要由5個(gè)部分組成,具體如下[3]:

        (1)調(diào)度器。相當(dāng)于電腦的中央處理器(CPU),主要負(fù)責(zé)調(diào)度URL管理器、下載器、解析器之間的協(xié)調(diào)工作。

        (2)URL管理器。包括待爬取的URL地址和已爬取的URL地址,防止重復(fù)抓取URL,實(shí)現(xiàn)URL管理器主要有3種方式,通過(guò)內(nèi)存、數(shù)據(jù)庫(kù)、緩存數(shù)據(jù)庫(kù)來(lái)實(shí)現(xiàn)。

        (3)網(wǎng)頁(yè)下載器。通過(guò)傳入一個(gè)URL地址來(lái)下載網(wǎng)頁(yè),將網(wǎng)頁(yè)轉(zhuǎn)換成一個(gè)字符,網(wǎng)頁(yè)下載器有urllib包括需要登錄、代理和cookier,requests。

        (4)網(wǎng)頁(yè)解析器。將一個(gè)網(wǎng)頁(yè)字符串進(jìn)行解析,可以按照用戶的要求來(lái)提取出有用的信息。

        (5)應(yīng)用程序。指從網(wǎng)頁(yè)中提取的有用數(shù)據(jù)組成的一個(gè)應(yīng)用。

        1.3 HTML和B/S模式

        HTML不是一種編程語(yǔ)言,而是標(biāo)識(shí)語(yǔ)言,用于創(chuàng)建網(wǎng)頁(yè),使用標(biāo)簽來(lái)描述網(wǎng)頁(yè)的。

        瀏覽器/服務(wù)器(Brower/Server,B/S)模式統(tǒng)一了客戶端,將系統(tǒng)功能的核心部分集中到服務(wù)器上,簡(jiǎn)化了系統(tǒng)的開發(fā)、維護(hù)和使用。

        2 爬蟲案例實(shí)現(xiàn)

        計(jì)算機(jī)二級(jí)是本科生階段最基礎(chǔ)的考試,為了能夠從大量信息中提取出有關(guān)于計(jì)算機(jī)二級(jí)的基本信息,本研究通過(guò)具體的代碼以及使用正則表達(dá)式來(lái)實(shí)現(xiàn)基本信息的抓取,供后期數(shù)據(jù)分析。

        2.1 數(shù)據(jù)分析

        首先,在I E瀏覽器中輸入ht t ps://bai ke.so.com/doc/5309824-5544749.html,就會(huì)出現(xiàn)關(guān)于計(jì)算機(jī)二級(jí)的所有信息;其次,按“F12”鍵進(jìn)入源代碼調(diào)試窗口,此窗口中有許多“div”標(biāo)簽,標(biāo)簽中的內(nèi)容就是待抓取數(shù)據(jù)。使用正則表達(dá)式來(lái)篩選。

        2.2 具體實(shí)現(xiàn)過(guò)程及抓取結(jié)果

        在進(jìn)行數(shù)據(jù)抓取時(shí),要先尋找標(biāo)簽或標(biāo)識(shí)符,選取所需標(biāo)簽時(shí)要遵循3個(gè)原則:

        (1)確定唯一能起決作用的標(biāo)識(shí)。

        (2)找最接近提取數(shù)據(jù)的標(biāo)簽。

        (3)選取閉合的標(biāo)簽,進(jìn)入源代碼調(diào)試窗口之后,左上角就會(huì)出現(xiàn)類似于小箭頭的按鈕(),鼠標(biāo)點(diǎn)擊此箭頭。移動(dòng)鼠標(biāo),當(dāng)鼠標(biāo)指向基本信息時(shí),源代碼調(diào)試窗口就會(huì)顯示包含基本信息的代碼,接著就在Pycharm編譯器中編寫代碼(關(guān)鍵代碼:form urllib import request;class Spider();url=”…”;root_pattern=”…”;…)。當(dāng)確定了“url”及“root_pattern”之后,能否提取到所有基本信息取決于在“root_pattern”的“div”標(biāo)簽中靈活使用正則表達(dá)式,正則表達(dá)式中字符集包括“a.[d D],b.[w 單詞字符W],c.[s空白字符S]”等。使用“[s S]*”就可以抓取關(guān)于二級(jí)的基本信息,抓取結(jié)果如圖2所示。

        圖2 抓取到的關(guān)于計(jì)算機(jī)二級(jí)的基本信息

        2.3 結(jié)果分析

        當(dāng)爬取數(shù)據(jù)量較小時(shí),執(zhí)行速度快;當(dāng)數(shù)據(jù)量較大時(shí),會(huì)出現(xiàn)卡頓情況,因?yàn)橄到y(tǒng)要為每個(gè)線程分配資源,同時(shí),要具備較好的網(wǎng)速以及較強(qiáng)的硬件,才會(huì)提升爬取速率。

        3 結(jié)語(yǔ)

        文章以對(duì)計(jì)算機(jī)二級(jí)的基本信息查詢?yōu)槔榻B了一種基于Python爬蟲的比賽信息查詢及交流系統(tǒng)的程序設(shè)計(jì),面對(duì)所爬取對(duì)象,文章還存在一定的缺陷,有進(jìn)一步的優(yōu)化空間。例如:爬取數(shù)據(jù)較大時(shí),速度會(huì)變慢,可以通過(guò)緩存或多線程技術(shù)優(yōu)化爬蟲算法效率。文章Python爬蟲技術(shù)的實(shí)現(xiàn)為后續(xù)研究工作奠定了一定的基礎(chǔ)。

        猜你喜歡
        源代碼爬蟲管理器
        人工智能下復(fù)雜軟件源代碼缺陷精準(zhǔn)校正
        利用網(wǎng)絡(luò)爬蟲技術(shù)驗(yàn)證房地產(chǎn)灰犀牛之說(shuō)
        基于TXL的源代碼插樁技術(shù)研究
        基于Python的網(wǎng)絡(luò)爬蟲和反爬蟲技術(shù)研究
        應(yīng)急狀態(tài)啟動(dòng)磁盤管理器
        Windows文件緩沖處理技術(shù)概述
        軟件源代碼非公知性司法鑒定方法探析
        利用爬蟲技術(shù)的Geo-Gnutel la VANET流量采集
        大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡(luò)爬蟲技術(shù)
        電子制作(2017年9期)2017-04-17 03:00:46
        揭秘龍湖產(chǎn)品“源代碼”
        亚洲国产成人无码影院| 日本视频在线观看二区| 亚洲精品无码不卡| 在线精品国产一区二区三区| 四虎国产精品视频免费看| 国产一区二区三区四区色| 日本免费一二三区在线| 综合色区亚洲熟妇另类| 国产美女在线精品免费观看网址| 最新中文字幕av无码不卡| 婷婷四房色播| 亚洲AV无码中文AV日韩A| 精品人妻码一区二区三区红楼视频| 丰满熟妇人妻av无码区| 大地资源中文第3页| 亚洲性无码av在线| 国产经典免费视频在线观看| 大屁股流白浆一区二区三区| 国产美女做爰免费视频| 欧美一区二区三区视频在线观看 | 爱我久久国产精品| 日本岛国一区二区三区| 自拍偷自拍亚洲精品第按摩| 九色九九九老阿姨| 国产午夜精品一区二区三区视频| 亚洲一区二区三区一区| 午夜被窝精品国产亚洲av香蕉| 亚洲欧洲国产成人综合在线| 亚洲最大日夜无码中文字幕| 好爽~又到高潮了毛片视频| 亚洲中文字幕乱码一二三| 特级精品毛片免费观看| 99热免费观看| 中文字幕久久人妻av| 无码免费无线观看在线视| 亚洲美女又黄又爽在线观看| 人妻少妇精品无码专区app| av网站免费在线浏览| 天堂8在线天堂资源bt| 亚洲人妻无缓冲av不卡| 中文字幕亚洲永久精品|