張婷 姚仿秋
摘要:網(wǎng)絡(luò)招聘中信息量巨大,數(shù)據(jù)冗余較多,導(dǎo)致很多求職者在瀏覽招聘信息時(shí)往往不知道如何選擇。網(wǎng)絡(luò)爬蟲,一種基于python語言的專有性搜索工具,能夠?qū)⒕W(wǎng)絡(luò)上的信息下載保存到本地,還能將網(wǎng)頁爬取到的大量信息用于數(shù)據(jù)分析和大數(shù)據(jù)研究。
本文實(shí)現(xiàn)了Scrapy爬蟲對招聘網(wǎng)站的數(shù)據(jù)爬取,通過搭建Flask框架對采集的數(shù)據(jù)進(jìn)行可視化分析。其分析結(jié)果可以幫助求職者在瀏覽招聘信息時(shí)更好地評估工資水平,有效地判斷招聘信息是否合理,進(jìn)而有效提高求職者在尋求招聘崗位時(shí)的效率。
關(guān)鍵詞:網(wǎng)絡(luò)爬蟲;Scrapy框架;網(wǎng)絡(luò)招聘信息
隨著互聯(lián)網(wǎng)的高速發(fā)展和大數(shù)據(jù)時(shí)代的來臨,網(wǎng)絡(luò)招聘已經(jīng)成為企業(yè)之間人才競爭的主要手段。相對于傳統(tǒng)的線下招聘而言,網(wǎng)絡(luò)招聘成本低、覆蓋面廣、易于發(fā)布信息、招聘信息種類眾多[1],通過網(wǎng)絡(luò)平臺(tái)求職者還可以更快地與招聘者進(jìn)行溝通聯(lián)系,節(jié)約了彼此之間的時(shí)間成本。同時(shí)由于“互聯(lián)網(wǎng)+”經(jīng)濟(jì)的蓬勃發(fā)展,使得網(wǎng)絡(luò)招聘成為我國招聘市場的主流趨勢[2]。招聘信息本身存在不同時(shí)段的時(shí)效性,不同政策的工資變化不同,冗余度大,成效低,讓求職者很難匹配到自己心儀的工作。
本文使用網(wǎng)絡(luò)爬蟲技術(shù)爬取三個(gè)招聘網(wǎng)站的招聘信息,將爬取下來的招聘數(shù)據(jù)進(jìn)行智能可視化分析,發(fā)掘數(shù)據(jù)中隱藏的價(jià)值,摸索網(wǎng)站招聘規(guī)律。通過得出結(jié)論,可以更有效地幫助求職者找到適合自己的工作。
一、網(wǎng)絡(luò)爬蟲技術(shù)概述
隨著大數(shù)據(jù)時(shí)代的來臨,互聯(lián)網(wǎng)上的數(shù)據(jù)容量爆炸性地增長,高性能的網(wǎng)絡(luò)搜索引擎以及定向的信息獲取的需求,使得網(wǎng)絡(luò)爬蟲技術(shù)逐漸成為人們研究的對象。網(wǎng)絡(luò)爬蟲就是通過模擬瀏覽器發(fā)出網(wǎng)絡(luò)請求,獲取網(wǎng)站服務(wù)器返回的響應(yīng),并按照一定需求爬取數(shù)據(jù)的腳本程序。網(wǎng)絡(luò)爬蟲可以分為兩類:通用爬蟲和聚焦爬蟲。
1.1 通用爬蟲概述
通過用戶初始規(guī)定的一個(gè)待爬取URL地址列表,爬蟲從中按順序爬取URL地址,通過DNS解析獲得到主機(jī)網(wǎng)頁的ip地址,然后交給下載器去下載網(wǎng)頁,將采集成功的網(wǎng)頁保存到本地磁盤中,并且將已爬取的URL地址做出標(biāo)志防止二次爬取,保存到磁盤中的網(wǎng)頁又存在許多鏈接信息,再從中抓取URL地址放入待爬取列表中去進(jìn)行分析。如果發(fā)現(xiàn)有未下的url就放在待抓取url隊(duì)列的列尾,從而等待調(diào)度下載。如此循環(huán)下載,待抓取隊(duì)列為空時(shí),爬蟲就完成了對網(wǎng)頁的下載。
1.2? 聚焦爬蟲概述
通用網(wǎng)絡(luò)爬蟲所采集的網(wǎng)頁數(shù)據(jù)和正常用戶在瀏覽器中訪問的數(shù)據(jù)是一樣的,而在大多數(shù)情況在,這些網(wǎng)頁數(shù)據(jù)中有90%是對用戶來說是不需要的。聚焦爬蟲則可以根據(jù)用戶的需求而去爬取特定的一些內(nèi)容,是一種面向主題、面向需求的爬蟲。本次論文所使用的爬蟲就是聚焦爬蟲。
二、搭建Scrapy框架
2.1 Scrapy框架
Scrapy框架是Python語言開發(fā)的,基于Twisted異步網(wǎng)絡(luò)框架的開源爬蟲框架。用戶可以根據(jù)需求在Scrapy框架各個(gè)模塊中編寫好要爬蟲的規(guī)則、存儲(chǔ)的結(jié)構(gòu),就能快速、靈活地爬取web網(wǎng)站的數(shù)據(jù)。其主要的框架組件有以下幾個(gè):
(1)Scrapy Engine(引擎)組件:負(fù)責(zé)各個(gè)組件之間的連接、信號傳遞
和數(shù)據(jù)通信,是整個(gè)框架組件的核心。
(2)Spiders(爬蟲)組件:用來定制爬取web網(wǎng)頁的規(guī)則,發(fā)出Request
請求到Schedule(調(diào)度器),同時(shí)也接收Downloader(下載器)發(fā)送過來的Response響應(yīng),并從中提取到item字段所需要的數(shù)據(jù)由引擎發(fā)送到Item管道,如果有需要根據(jù)的url鏈接,就繼續(xù)提交給調(diào)度器。
(3)Schedule(調(diào)度器):接收到爬蟲組件發(fā)送過來的Request請求,將請求進(jìn)行入隊(duì)列處理,進(jìn)而交給Downloader下載。
Scrapy架構(gòu)圖如下所示,其中綠線表示數(shù)據(jù)流向。
圖2為Scrapy框架的工作流程圖。
三、 基于網(wǎng)絡(luò)爬蟲的數(shù)據(jù)采集實(shí)驗(yàn)
本研究的實(shí)驗(yàn)基于Python軟件進(jìn)行,對北京計(jì)算機(jī)崗位招聘信息進(jìn)行爬蟲實(shí)驗(yàn),其中爬蟲程序運(yùn)行過程如圖3。
運(yùn)行完畢之后,打開navicat可視化工具查看下載的招聘數(shù)據(jù)內(nèi)容,如圖4。
三個(gè)爬蟲項(xiàng)目最大的區(qū)別在于各自網(wǎng)站數(shù)據(jù)傳輸?shù)腢RL,這是各不相同的,通過抓包分析能獲取到網(wǎng)站數(shù)據(jù)傳輸?shù)腏son地址,將其包裝到爬蟲模塊中去發(fā)送請求。前程無憂和拉鉤網(wǎng)爬蟲項(xiàng)目的反爬蟲設(shè)置、數(shù)據(jù)庫連接、數(shù)據(jù)清洗都與智聯(lián)招聘網(wǎng)爬蟲項(xiàng)目一致。執(zhí)行各自的爬蟲名即可完成對網(wǎng)站數(shù)據(jù)的抓取。
四、結(jié)論
本文實(shí)現(xiàn)了使用Python的Scrapy爬蟲框架對三個(gè)招聘網(wǎng)站的招聘信息采集,本文從求職者的角度去進(jìn)行數(shù)據(jù)分析,利用Flask框架簡單,靈活的特點(diǎn),完成后臺(tái)服務(wù)器的搭建和使用SQLAlchemy模塊對采集的數(shù)據(jù)進(jìn)行操作,實(shí)現(xiàn)可對不同崗位進(jìn)行搜索分析的網(wǎng)頁。求職者可以通過圖形的分析結(jié)果進(jìn)而判斷招聘信息是否合理,有利于更好地選擇工作。
參考文獻(xiàn):
[1]杜玉帆,杜瑩瑩.“互聯(lián)網(wǎng)+”時(shí)代下網(wǎng)絡(luò)招聘行業(yè)發(fā)展探析[J].中國市場,2018(11):180-181.
[2]耿玉德,張?jiān)?招聘網(wǎng)站求職滿意度影響因素分析——以高校大學(xué)學(xué)生為例[J].工業(yè)經(jīng)濟(jì)論壇,2018,05(05):82-89.
[3]杜玉帆,杜瑩瑩.如何應(yīng)對網(wǎng)絡(luò)招聘中的虛假信息[J].中國市場,2018,(11):180-181.
[4] 北京大學(xué)天網(wǎng)搜索引擎[EB/OL].http:∥pku.edu.cn,2019-05-03
[5]趙禹婷.我國網(wǎng)絡(luò)招聘市場的現(xiàn)狀及提升對策研究[J].現(xiàn)代交際,2019(05):243-244.
[6]畢寧寧. 移動(dòng)互聯(lián)網(wǎng)環(huán)境下企業(yè)招聘渠道研究[D].東北師范大學(xué),2018.
[7]郭越. 虛假網(wǎng)絡(luò)招聘中的法律問題研究[D].山西大學(xué),2018.
[8]鄭毅. 某公司招聘管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué),2018.
[9]趙丹. 網(wǎng)絡(luò)招聘信息的分析與挖掘[D].貴州財(cái)經(jīng)大學(xué),2017.
[10]彩廣畏. 從網(wǎng)絡(luò)招聘信息看我國人才需求狀況[D].湖南師范大學(xué),2017.
作者簡介:
張婷,(1982.08.29-),女,岳陽職業(yè)技術(shù)學(xué)院,414000,漢族,湖南省岳陽市,碩士,講師,大數(shù)據(jù)。