








摘" 要: 針對求職者面對招聘網站上繁雜的招聘信息而無法高效獲取有參考價值信息并準確找到合適工作的情況,本文首先基于Python爬蟲技術對BOSS直聘網站上互聯網行業相關崗位招聘信息進行爬取,然后將獲取到的招聘信息數據采用PySpark技術進行數據清洗,最后利用FineBI工具對崗位數據進行可視化分析,得到崗位要求與學歷、地區、薪資等存在的關系,也進行了招聘崗位和福利待遇的詞云圖分析。該研究結果能夠直觀的呈現互聯網行業當前招聘現狀,可為求職者提供有效參考。
關鍵詞: 招聘信息; Python; PySpark; FineBI; 可視化分析
中圖分類號:TP391" " " " " 文獻標識碼:A" "文章編號:1006-8228(2023)12-15-05
Research on recruitment information data analysis and visualization based on FineBI
Wang Jiaojiao, Gu Shen, Zhao Miao, Zhou Yijie
(School of Computer an Information Engineering, Luoyang Institute of Science and Technology, Luoyang, Henan 471023, China)
Abstract: In order to solve the problem that job seekers cannot efficiently obtain valuable information and accurately find the suitable job in the face of the complicated recruitment information on the recruitment website, the recruitment information for positions related to the internet industry on the BOSS recruitment website is firstly crawled based on Python crawler technology. Then, Pyspark technology is used to clean the data of the acquired recruitment information, and FineBI tool is used to visually analyze the job data. Finally, the relationship between job requirements and education, region, salary, etc. is obtained, and the word cloud analysis of recruitment positions and welfare benefits is carried out. The research results can visually present the current recruitment status of the internet industry and provide effective reference for job seekers.
Key words: recruitment information; Python; PySpark; FineBI; visualization analysis
0 引言
我國已建成的招聘網站約有兩千多家,有大量的求職者通過瀏覽網站招聘信息尋找工作機會,但網站上招聘信息量大,有效職位信息更新快,使得求職者在眼花繚亂的招聘信息中篩選出自己滿意的工作具有難度[1]。
BOSS直聘是國內目前應用最廣泛的招聘網站之一,本文依托BOSS直聘網站,根據互聯網行業關鍵詞,運用爬蟲技術獲取相關崗位的地點、薪資、福利和公司規模等信息,再對數據進行預處理和可視化分析,在一定程度上幫助畢業生以及其他求職者了解就業市場行情,根據求職需求精準定位崗位信息,找到與自身能力相匹配的工作。
1 爬蟲獲取數據
1.1 確定爬取對象
本文研究對象為BOSS直聘網站上IT行業招聘信息數據,使用Selenium庫自動化操作火狐瀏覽器的方式爬取網站IT行業相關崗位信息[2],爬蟲采用的編程語言版本是 Python3.9.10,集成開發環境是Pycharm。
1.2 分析URL
在BOSS直聘網上進入“職位”頁面,招聘頁面的URL規律為https://www.zhipin.com/web/geek/job?query='關鍵詞'amp;city=100010000amp;page='頁碼',因此采取通過改變頁碼和IT關鍵詞的方式提取相關招聘信息,設置停頓時間為5秒[3]。
1.3 提取數據
采用CSS選擇器獲取網頁上的全部數據,通過定義函數lis=driver.find_elements(By.CSS_SELECTOR,
'.job-card-wrapper')實現[4],再根據標簽的類屬性提取到公司名稱、公司地區、薪資水平、學歷要求以及福利待遇等詳細內容。
1.4 數據保存
為了方便進行數據查看和數據交換,這里采用CSV文件的形式保存招聘信息數據,先將信息放入相應類型的列表中,創建標簽列表作為文件列名,再將數據寫入文件中,如圖1所示。
2 數據分析過程
上述得到的CSV文件存在數據缺失、重復、錯誤以及不可用的情況,需要進行數據處理[5]。本文通過采用PySpark大數據技術將上述獲取得到的CSV文件進行預處理,以便整理出期望的格式,這樣才能得到更好效果的可視化分析[6]。數據預處理過程分為下面三個步驟:
⑴ 數據去重。調用dropDuplicates()函數對數據進行去重,保留惟一的記錄。
⑵ 信息拆分。根據獲取到的數據觀察到地區列、薪資列和tag_list列都包含多個字段,需要從三個方面完成數據的拆分:一是對地區列的拆分,地區列數據格式為“xx·xx·xx”,要將該格式拆開創建新的“城市”、“區域”和“街道”三個列;二是對薪資列的拆分,薪資列格式為“xx-xx·xx”,要將該格式拆開創建新的“最低薪資”、“最高薪資”和“薪資制度”三個列;三是對tag_list列的拆分,要將該列數據拆開創建新的“工作經驗”和“教育程度”兩個列。
⑶ 數據格式轉換。薪資列和工作經驗列格式需統一為數值類型,例如:將 salary中包含“元/時” 的數據行刪除,將salary統一單位為“K”, 將5000元/月轉換為5K,將 salaryPay 轉換數值型,將maxsalary列的“元/天”刪除掉等操作。
經過數據預處理后最終得到1800余條可用數據,如圖2所示,調整后的數據提升了可用性,便于后續進行可視化分析。
3 招聘數據可視化分析結果
FineBI是帆軟軟件有限公司旗下的一款免費開源的數據可視化的BI工具[7],FineBI對于數據加工操作可謂良好,使用方便,可視化結果能夠隨著操作步驟實現實時展現,用戶能夠簡易的制作出豐富多樣的可視化信息[8]。綜上,本文選取FineBI工具對招聘信息數據進行可視化研究。
3.1 學歷要求
通過圖3崗位對不同學歷要求的占比圖,可以看出在IT行業就業市場中,要求本科學歷的工作崗位最多,占比七成左右;其次是大專學歷,占比兩成左右;對于碩士、博士這類高學歷人群招聘比例不高,通過觀察招聘崗位信息發現,招聘碩士和博士的都是偏向于研發方向,對學歷要求高;學歷為高中及以下的崗位招聘數量較少。
3.2 工作經驗要求
從圖4可以看出,要求具備3~5年工作經驗的崗位招聘數量最多,其次是工作經驗為1~3年。要求10年以上工作經驗的崗位數量最少,其次是應屆畢業生。這說明大多招聘單位傾向于招聘有一定工作經驗的人才,在校生及應屆生因缺乏工作經驗而工作機會較少,因此建議學生可以把重點放在校園招聘,無需工作經驗。
3.3 薪資水平分析
從圖5可以得知,目前全國平均薪資排名前三的城市是南通、北京和上海,其對應的薪資水平分別為36000、25290和20500。這意味著在不同地區從事相同類型的工作獲得的收入也是不盡相同的,這就需要求職者明白在選擇工作時應充分了解各個地區的薪資情況,同時跟自己的實際情況綜合考慮,以便找到適合自己的工作。
3.4 招聘崗位地區分布
圖6和圖7展示了崗位地區分布情況,可以看出IT行業相關崗位集中分布在沿海發達城市和中西部省會城市,求職者在找工作時候可結合自身情況去在這些城市中去選擇工作區域,就業機會排名前五名的城市為北京、上海、深圳、杭州和廣州,相對來說這些地區招聘人數多,求職者找工作選擇多,在一定程度上錄用率也高。
3.5 招聘崗位詞云分布
通過對公司招聘崗位數據繪制詞云圖共得到575條不同的福利詞匯,如圖8所示。出現頻率最高的五大關鍵詞為:“C++”、“ETL工程師”、“JAVA”、“PYTHON”和“數據分析師”,如表1所示,表明在人才市場需求中,求職者想從事該方向工作就需增強這類技能,提升求職競爭力,這樣工作選擇機會較大。
3.6 福利詞云分布
通過對福利待遇數據繪制詞云圖共得到261條不同的福利詞匯,如圖9所示。出現次數排名前五的分別是“五險一金”、“帶薪年假”、“年終獎”、“節日福利”和“定期體檢”,如表2所示,這些福利待遇好壞能反映出公司的實力及規模,也是求職者比較關心的一個方面,能夠幫助求職者做出決策。
4 結論
本文通過爬蟲技術獲取招聘信息數據,使用PySpark技術完成數據去重、信息拆分和格式轉換等預處理操作,基于FineBI工具完成了招聘信息數據的可視化分析??梢暬治鼋Y果包括崗位學歷要求、工作經驗要求、崗位城市分布、薪資范圍、崗位詞云分布和福利待遇詞云分布等內容。該結果直觀呈現出IT行業招聘崗位的特點,求職者從中了解崗位信息,在一定程度上節省了盲目瀏覽網站的時間,有利于高效找到適合自己的工作。同時,爬蟲獲取的招聘信息數據也可以進行文本挖掘、機器學習等進一步的分析。
參考文獻(References):
[1] 湯飛弘.基于Python爬蟲的招聘信息數據可視化分析[J].
軟件,2023,44(1):176-179.
[2] 張晨祥,寧璐,馮明歌.基于Pyhton的涉農職位招聘信息爬取
與可視化分析[J].計算機時代,2023(2):51-54,60.
[3] 于學斗,柏曉鈺.基于Python的城市天氣數據爬蟲程序分析[J].
辦公自動化,2022,27(7):10-13,9.
[4] 楊孟姣,杜棋動.基于Python爬蟲網站數據分析系統設計與
實現[J].計算機時代,2023(11):81-83.
[5] 黃濤,高麗婷.基于Spark的實時數據采集與處理[J].河北
建筑工程學院學報,2022,40(4):176-179,188.
[6] 楊衛寧,鄒維寶.基于Spark的出租車軌跡處理與可視化
平臺[J].計算機系統應用,2020,29(3):64-72.
[7] 帆軟社區 .FineBI6.0 幫助文檔[EB/OL].https://help.
fanruan.com/finebi/doc-view-59.html
[8] 胡是洋,劉威.基于FineBI的農產品產銷數據的可視化研究[J].
電腦知識與技術,2023,19(15):54-59.