前言
近年來 Python 之火大家都有感而知,那親們知道北京的 Python 開發崗位、運維開發崗位招聘地域都是如何分佈的嗎?薪水如何?是否有前景等等,這些數據呢直接通過招聘信息來了解到企業用人是最直接的,也是最簡單的途徑。
那本次將通過分享 Python 來抓取拉鉤的招聘信息,然後加以分析,做一個北京的 Python 職位地域分佈、薪資範圍、福利待遇等維度出一個簡單的分析報告,希望能幫助到想在 Python 這片田地耕耘的童鞋在發展方向上有所參考。
使用到的工具
使用 Python 的 requests 工具到招聘網站爬取我們想要的數據,分析和可視化也使用 Python 的相關模塊來實現,主要有如下:
- Python 版本:Python 3.x
- requests:發起請求,從網站抓取數據
- math:數學運算函數,向上取整,這裡主要用於分析數據
- time:時間模塊,主要是控制爬蟲不會因為頻繁請求而被網站拉進小黑屋
- pandas:數據抓取後使用該模塊保存為 csv 文件到本地
- matplotlib:可視化畫圖
- pylab:設置畫圖能顯示中文
- wordcloud、scipy、jieba(字符串分割成單詞):生成中文詞雲
如何進行數據抓取
使用 Chrome 打開拉鉤網站,在網站輸入“Python開發” 職位,使用 “檢查” 功能查看網頁源碼。發現拉鉤有反爬機制,職位信息並不在源代碼裡,而是在 JSON 文件裡,因此直接通過 JSON 獲取數據即可。
抓取信息時,需要加上頭部信息,才能獲取到數據。(原理很簡單:你得偽裝成一個 正常的 client 去請求網頁才能拿到想要的數據)
在搜索結果的第一頁,我們可以從 JSON 裡讀取總職位數,按照每頁15個職位,獲得要爬取的頁數。再使用循環按頁爬取,將職位信息彙總,輸出為 CSV 格式。
序運行如下:
抓取結果如下:
數據可視化畫圖展示
1、根據薪資製作直方圖
薪資比例描述和可視化出圖
2、根據崗位地域分佈製作餅圖
3、製作詞雲
將職位福利這一列數據進行彙總,按照詞語出現的頻率生成雲詞實現 Python 可視化,以下是原圖和雲詞圖對比:
某上市公司高級運維,業務運維負責人,主導運維自動化的開發與運維前沿技術的落地,曾就職中石油、魔秀科技,5年從業經驗,經歷了運維到運維開發的轉變。
添加小助手wechat:17812796384 獲取資料
閱讀更多 Python學習 的文章