正當(dāng)時(shí)......

學(xué)術(shù)咨詢服務(wù)
當(dāng)前位置:職稱那點(diǎn)事教育職稱論文》基于網(wǎng)絡(luò)爬蟲的就業(yè)數(shù)據(jù)分析

基于網(wǎng)絡(luò)爬蟲的就業(yè)數(shù)據(jù)分析

來源:職稱那點(diǎn)事作者:田編輯時(shí)間:2020-09-14 10:20
掃碼咨詢

  要: 隨著網(wǎng)絡(luò)信息量的爆炸式增長(zhǎng),大數(shù)據(jù)時(shí)代的來臨,利用網(wǎng)絡(luò)爬蟲對(duì)大數(shù)據(jù)進(jìn)行分析處理有非常重要的意義。本文 以 BOSS 直聘網(wǎng)站為例,在 Python3.7 和 MySQL Server8.0 的基礎(chǔ)上,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)關(guān)于就業(yè)信息的數(shù)據(jù)采集存儲(chǔ)系統(tǒng)。 并且通過對(duì)采集到的就業(yè)數(shù)據(jù)信息做出多個(gè)方面的分析,利用這些數(shù)據(jù)分析結(jié)果為大多數(shù)人在就業(yè)選擇以及未來規(guī)劃的時(shí) 候提供一個(gè)有據(jù)可依的參照,起到一個(gè)指導(dǎo)就業(yè)的作用。

  關(guān)鍵詞: 網(wǎng)絡(luò)爬蟲; 就業(yè)信息; 數(shù)據(jù)分析; 就業(yè)指導(dǎo)

  0 引 言

  隨著人工智能的概念逐步的深入展開,人工智能 因其高效性和實(shí)用性受到越來越多的重視。作為人 工智能的重要組成部分,大數(shù)據(jù)也開始在社會(huì)生產(chǎn)中 發(fā)揮巨大作用,同時(shí)還帶動(dòng)了社會(huì)生活質(zhì)量的全面提 升,并提供了以往不曾有過的便利性。在國內(nèi)對(duì)高等 教育改革正邁向更深層次的時(shí)候,各校的畢業(yè)生規(guī)模 也逐年增加。臨近畢業(yè)時(shí),或多或少都會(huì)存在許多迷 茫。而在招聘、應(yīng)聘的過程中,互聯(lián)網(wǎng)作為當(dāng)下承載 海量招聘信息的重要載體,則給畢業(yè)生的擇業(yè)提供了 一條便捷途徑。只是互聯(lián)網(wǎng)的信息檢索中卻會(huì)面臨 許多用戶并不需要的信息,只有通過人工篩選、再經(jīng) 總結(jié)對(duì)比后,才能得到最終想要的信息。

基于網(wǎng)絡(luò)爬蟲的就業(yè)數(shù)據(jù)分析

  1爬蟲的設(shè)計(jì)

  1.1 系統(tǒng)需求及分析 網(wǎng)絡(luò)爬蟲系統(tǒng)的開發(fā)是否成功取決于確保系統(tǒng) 能夠?qū)崿F(xiàn)用戶定制功能,達(dá)到預(yù)期設(shè)計(jì)目的。因此, 在網(wǎng)絡(luò)爬蟲系統(tǒng)開發(fā)之前,就需要對(duì)該系統(tǒng)需求加 以詳盡分析,從而對(duì)整體的設(shè)計(jì)有一個(gè)清晰的思路。 時(shí)下,普遍適用的爬蟲系統(tǒng)都是模塊化的,模塊化的 程序設(shè)計(jì)有利于代碼塊的測(cè)試與維護(hù),而且也進(jìn)一 步增加了代碼的適用性。在此基礎(chǔ)上,只要對(duì)各個(gè) 模塊進(jìn)行組合,就能夠構(gòu)建出一個(gè)完整的爬蟲系統(tǒng)。 本次研究即以 BOSS 直聘為例,開展模塊化的編程 設(shè)計(jì)。因?yàn)檠芯恐荚谕ㄟ^爬蟲系統(tǒng)對(duì)當(dāng)前就業(yè)做出 科學(xué)分析,故而針對(duì)此需求就要從 BOSS 直聘網(wǎng)站 中獲取全部的崗位信息,以及從每個(gè)崗位中獲得包 括各崗位名稱、工作地點(diǎn)、薪水、公司規(guī)模性質(zhì)、工作 要求在內(nèi)的各種關(guān)鍵信息。至此,在接下來的功能、 模塊設(shè)計(jì)中,就具備了較強(qiáng)的針對(duì)性。

  1.2 爬蟲模塊設(shè)計(jì)

  1.2.1 爬蟲整體設(shè)計(jì)思路 爬蟲系統(tǒng)的設(shè)計(jì)思路為: 首先,需要獲得所有包括崗位信息網(wǎng)頁的源碼; 其次,在每一頁的網(wǎng)頁源碼 中尋找出與需求相匹配的信息,此時(shí)就需要連接爬 蟲系統(tǒng)和數(shù)據(jù)庫,將每次成功匹配到的信息均存入 數(shù)據(jù)庫中,直至所有網(wǎng)頁檢索完畢。在數(shù)據(jù)爬取的 整個(gè)過程中,針對(duì) BOSS 直聘的高度反爬,還要在各 個(gè)模塊中引入適當(dāng)?shù)姆窗遣呗裕源吮WC數(shù)據(jù)爬取 的連續(xù)性。研究可得整體設(shè)計(jì)框架如圖 1 所示

  1.2.2 爬蟲的網(wǎng)頁抓取模塊 網(wǎng)頁抓取模塊作為爬蟲系統(tǒng)中最重要的部分, 也是起始的模塊。但是從實(shí)際爬取的情況來看,針 對(duì)同一個(gè) IP 在短時(shí)間內(nèi)的多次爬取,會(huì)被網(wǎng)站屏蔽 IP 地址,因此在這里采用代理 IP 池的技術(shù)去訪問。 為了避免被對(duì)方發(fā)現(xiàn),還需要加入 User-Agent 將自 己偽裝成代理服務(wù)器。通過構(gòu)造代理 IP 池以及由 眾多用戶代理組成的代理池,每次隨機(jī)選擇訪問 IP 與用戶代理的搭配,據(jù)此而將自己偽裝成來自不同 IP 的用戶訪問,大大降低了被反爬蟲的概率。接下 來采用 Requsets 庫 的 API 去解析當(dāng)前第一層的 URL。如: resp = requests.get( url, headers = headers, proxies = proxies,timeout = 5)

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

  2.1 數(shù)據(jù)處理

  通過設(shè)計(jì)好的網(wǎng)絡(luò)爬蟲系統(tǒng),從 BOSS 直聘網(wǎng) 站上爬取了上海地區(qū) 13 萬多的崗位招聘信息數(shù)據(jù), 從招聘崗位、工資待遇、工作地點(diǎn)、工作要求、公司性 質(zhì)這幾方面的信息,對(duì)上海地區(qū)的就業(yè)數(shù)據(jù)做出研 究與分析,對(duì)廣大擇業(yè)人員可起到一個(gè)初步指導(dǎo)的 作用。 通過 Navicat Premium 將數(shù)據(jù)庫導(dǎo)出成 Excel 文 件,在 Python 中通過 pandas 庫對(duì)數(shù)據(jù)進(jìn)行處理,首 先將所有的數(shù)據(jù)通過 read_excel 的 API 讀取到處理 環(huán)境下,將每一列的數(shù)據(jù)分別提取出來構(gòu)造出 job、 salary、requirements、situation 四個(gè)列表,通過遍歷整 個(gè) requirements,檢索每一個(gè)元素的字段,可以統(tǒng)計(jì) 出上海市每個(gè)地區(qū)大約能夠提供多少個(gè)工作崗位; 同理,用上述的方法,可以統(tǒng)計(jì)出上海地區(qū)提供的工 作崗位對(duì)學(xué)歷的要求,以及公司規(guī)模的情況。對(duì)于 就業(yè)數(shù)據(jù)分析來說,至關(guān)重要的就是薪資分析,將提 取出來的 salary 列表,對(duì)每一個(gè)元素采用正則表達(dá) 式匹配前兩個(gè)數(shù)字,也就是這份工作的薪水上下限, 求一個(gè)平均值,遍歷整個(gè)列表,對(duì)薪水分布進(jìn)行統(tǒng) 計(jì)。同時(shí),通過定位以及包含字符段的方法,可以將 每個(gè)地區(qū)的工作以及相對(duì)應(yīng)的薪水提取出來,再通 過前文對(duì)全上海各地區(qū)的工作崗位統(tǒng)計(jì),對(duì)上海各 地區(qū)的平均薪資做出分析。在此基礎(chǔ)上,各行各業(yè) 的薪資水平也能夠根據(jù)各行業(yè)的崗位數(shù)以及對(duì)應(yīng)的 平均薪資計(jì)算得出。

  2.2 數(shù)據(jù)分析結(jié)果

  隨著應(yīng)屆畢業(yè)生的人數(shù)每年不斷上升,帶給社 會(huì)的就業(yè)壓力也隨即增大,在這種就業(yè)形勢(shì)競(jìng)爭(zhēng)激 烈的就業(yè)市場(chǎng)里面如何做出最佳的選擇即已成為研 究的熱點(diǎn)與焦點(diǎn)。

  3 結(jié)束語

  本文通過 Python 加上 MySQL Server 的配置,創(chuàng) 建了一個(gè)基于 BOSS 直聘網(wǎng)站的網(wǎng)絡(luò)爬蟲數(shù)據(jù)收集 分析系統(tǒng),該系統(tǒng)能夠登錄到 BOSS 直聘,并獲取頁 面信息,分析頁面中的 URL,同時(shí)對(duì)篩選構(gòu)造后的 URL 再一次進(jìn)行數(shù)據(jù)篩選,將用戶獲取到的數(shù)據(jù)存 儲(chǔ)到數(shù)據(jù)庫,在此基礎(chǔ)上將對(duì)數(shù)據(jù)進(jìn)行深層次的挖 掘,也就是運(yùn)用一系列的數(shù)據(jù)分析手段,獲得關(guān)于上 海各地區(qū)、各崗位的薪資待遇、招聘需求等一系列重 要信息,為廣大的就業(yè)人員提供有益的借鑒與參考。

  參考文獻(xiàn)

 ?。?]徐遠(yuǎn)超,劉江華,劉麗珍,等. 基于 Web 的網(wǎng)絡(luò)爬蟲的設(shè)計(jì)與 實(shí)現(xiàn)[J]. 微計(jì)算機(jī)信息,2007,23( 21) : 119-121.

 ?。?]郭麗蓉. 基于 Python 的網(wǎng)絡(luò)爬蟲程序設(shè)計(jì)[J]. 電子技術(shù)與軟件 工程,2017( 23) : 248-249.

 ?。?]周中華,張惠然,謝江. 基于 Python 的新浪微博數(shù)據(jù)爬蟲[J]. 計(jì)算機(jī)應(yīng)用,2014,34( 11) : 3131-3134

  作者項(xiàng)博良,唐淳淳,錢 前,曹健東


《基于網(wǎng)絡(luò)爬蟲的就業(yè)數(shù)據(jù)分析》
上一篇:河南省農(nóng)村人才流失問題探究
下一篇:新時(shí)期小學(xué)體育教學(xué)的有效性教學(xué)策略分析
更多>>

期刊目錄