相信各位同學(xué)多多少少在拉鉤上投過簡歷,今天突然想了解一下北京Python開發(fā)的薪資水平、招聘要求、福利待遇以及公司地理位置。既然要分析那必然是現(xiàn)有數(shù)據(jù)樣本。本文通過爬蟲和數(shù)據(jù)分析為大家展示一下北京Python開發(fā)的現(xiàn)狀,希望能夠在職業(yè)規(guī)劃方面幫助到大家?。。?/p>
爬蟲
爬蟲的第一步自然是從分析請求和網(wǎng)頁源代碼開始。從網(wǎng)頁源代碼中我們并不能找到發(fā)布的招聘信息。但是在請求中我們看到這樣一條POST請求
如下圖我們可以得知
url:https://www.lagou.com/jobs/positionAjax.json?city=%E5%8C%97%E4%BA%AC&needAddtionalResult=false
請求方式:post
result:為發(fā)布的招聘信息
totalCount:為招聘信息的條數(shù)
通過實踐發(fā)現(xiàn)除了必須攜帶headers之外,拉勾網(wǎng)對ip訪問頻率也是有限制的。一開始會提示'訪問過于頻繁',繼續(xù)訪問則會將ip拉入黑名單。不過一段時間之后會自動從黑名單中移除。
針對這個策略,我們可以對請求頻率進行限制,這個弊端就是影響爬蟲效率。
其次我們還可以通過代理ip來進行爬蟲。網(wǎng)上可以找到免費的代理ip,但大都不太穩(wěn)定。付費的價格又不太實惠。
具體就看大家如何選擇了
思路
通過分析請求我們發(fā)現(xiàn)每頁返回15條數(shù)據(jù),totalCount又告訴了我們該職位信息的總條數(shù)。
向上取整就可以獲取到總頁數(shù)。然后將所得數(shù)據(jù)保存到csv文件中。這樣我們就獲得了數(shù)據(jù)分析的數(shù)據(jù)源!
post請求的FormData傳了三個參數(shù)
first:是否首頁(并沒有什么用)
pn:頁碼
kd:搜索關(guān)鍵字
nobb,showcode
接下來我們只需要每次翻頁之后調(diào)用get_json獲得請求的結(jié)果再遍歷取出需要的招聘信息即可
ok!數(shù)據(jù)我們已經(jīng)獲取到了,最后一步我們需要將數(shù)據(jù)保存下來
運行main方法直接上結(jié)果:
數(shù)據(jù)分析
通過分析cvs文件,為了方便我們統(tǒng)計,我們需要對數(shù)據(jù)進行清洗
比如剔除實習(xí)崗位的招聘、工作年限無要求或者應(yīng)屆生的當做0年處理、薪資范圍需要計算出一個大概的值、學(xué)歷無要求的當成大專
數(shù)據(jù)通過簡單的清洗之后,下面開始我們的統(tǒng)計
繪制薪資直方圖
結(jié)論:北京市Python開發(fā)的薪資大部分處于15~25k之間
公司分布餅狀圖
結(jié)論:Python開發(fā)的公司最多的是海淀區(qū)、其次是朝陽區(qū)。準備去北京工作的小伙伴大概知道去哪租房了吧
學(xué)歷要求直方圖
結(jié)論:在Python招聘中,大部分公司要求是本科學(xué)歷以上。但是學(xué)歷只是個敲門磚,如果努力提升自己的技術(shù),這些都不是事兒
福利待遇詞云圖
結(jié)論:彈性工作是大部分公司的福利,其次五險一金少數(shù)公司也會提供六險一金。團隊氛圍、扁平化管理也是很重要的一方面。
至此,此次分析到此結(jié)束。有需要的同學(xué)也可以查一下其他崗位或者地區(qū)的招聘信息哦~希望能夠幫助大家定位自己的發(fā)展和職業(yè)規(guī)劃。