亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Python爬蟲(chóng)技術(shù)的IT類畢業(yè)生求職數(shù)據(jù)抓取與分析研究

        2018-12-28 20:41:40席一
        科學(xué)與財(cái)富 2018年30期
        關(guān)鍵詞:數(shù)據(jù)分析

        摘要:在分析網(wǎng)絡(luò)時(shí)代爬蟲(chóng)技術(shù)的基礎(chǔ)上,介紹了基于python語(yǔ)言爬蟲(chóng)技術(shù)的基本情況及其特性,并列舉了利用python語(yǔ)言編寫(xiě)爬蟲(chóng)程序?qū)η俺虩o(wú)憂網(wǎng)的IT類求職數(shù)據(jù)行了爬取,對(duì)爬取的數(shù)據(jù)進(jìn)行了統(tǒng)計(jì)分析, 得出相關(guān)結(jié)論。

        關(guān)鍵詞:Python;Scrapy;爬蟲(chóng)技術(shù);數(shù)據(jù)分析;就業(yè)推薦

        1.引言

        隨著大數(shù)據(jù)時(shí)代的發(fā)展,網(wǎng)絡(luò)上有價(jià)值信息的讀取和解析漸漸成為成功挖掘數(shù)據(jù)的基礎(chǔ)性工作。面對(duì)互聯(lián)網(wǎng)上各種格式的網(wǎng)頁(yè)和網(wǎng)頁(yè)開(kāi)發(fā)者不同的設(shè)計(jì)思路,網(wǎng)絡(luò)爬蟲(chóng)技術(shù)在近年來(lái)獲得了人們?cè)絹?lái)越多的關(guān)注和研究,爬蟲(chóng)技術(shù)的發(fā)展驅(qū)動(dòng)了現(xiàn)代的大數(shù)據(jù)網(wǎng)絡(luò)時(shí)代。爬蟲(chóng)技術(shù)是一把利用網(wǎng)絡(luò)上龐大的數(shù)據(jù)資源的利器,通過(guò)構(gòu)造爬蟲(chóng),不僅可以連接數(shù)據(jù)和解析數(shù)據(jù),還可以將這些數(shù)據(jù)進(jìn)行分析并將分析結(jié)果利用圖表進(jìn)行展示。爬蟲(chóng)可以實(shí)現(xiàn)網(wǎng)頁(yè)之間的連接,構(gòu)建整個(gè)網(wǎng)站的地圖映射。除此之外,爬蟲(chóng)不會(huì)遺漏擴(kuò)展的鏈接,會(huì)繼續(xù)對(duì)其進(jìn)行跟蹤。

        中國(guó)IT產(chǎn)業(yè)在過(guò)去5年的時(shí)間里,經(jīng)歷了28%的年增長(zhǎng)速度,比同期的國(guó)家GDP增長(zhǎng)速度的3倍,IT產(chǎn)業(yè)占全國(guó)工業(yè)比重達(dá)到12.3%,占GDP的9.1%,成為第一大產(chǎn)業(yè)。伴隨著行業(yè)的發(fā)展,IT人才的短缺現(xiàn)象將會(huì)越來(lái)越嚴(yán)重。據(jù)估計(jì),目前中國(guó)市場(chǎng)對(duì)IT人才的需求每年超過(guò)50萬(wàn)人。而國(guó)內(nèi)目前的IT教育主要是高等學(xué)校計(jì)算機(jī)、電子、電信、信息技術(shù)等相關(guān)專業(yè)的學(xué)歷教育,每年培養(yǎng)的大學(xué)畢業(yè)生約為5萬(wàn),遠(yuǎn)遠(yuǎn)不能滿足市場(chǎng)的需求。

        前程無(wú)憂網(wǎng)作為國(guó)內(nèi)最大的招聘網(wǎng)站之一,所擁有的信息極其龐大,令人眼花繚亂、無(wú)從選擇。在大數(shù)據(jù)的時(shí)代下,Python語(yǔ)言充分的展示出了它的優(yōu)勢(shì),在科學(xué)計(jì)算、文件處理、數(shù)據(jù)分析等領(lǐng)域越來(lái)越凸顯其價(jià)值。使用Python對(duì)前程無(wú)憂網(wǎng)IT類招聘信息中的薪資數(shù)據(jù)、職位信息、工作經(jīng)驗(yàn)等信息的搜集,利用Scrapy抓取這些招聘信息并用Pandas對(duì)數(shù)據(jù)進(jìn)行清理,通過(guò)對(duì)這些數(shù)據(jù)的分析,可以為IT類求職者推薦求職崗位和就業(yè)城市,讓IT類求職者對(duì)選擇求職崗位和就業(yè)城市有一個(gè)大致的判斷。

        2.求職網(wǎng)站面臨的問(wèn)題

        2.1招聘信息魚(yú)龍混雜

        求職者打開(kāi)招聘網(wǎng)站會(huì)發(fā)現(xiàn),求職信息太多以至于不知道如何取舍。比如選擇IT類的職位,應(yīng)該選擇哪個(gè)崗位呢?是JAVA開(kāi)發(fā)工程師,亦或是前端開(kāi)發(fā)工程師?選擇崗位無(wú)非最關(guān)心的就是薪資待遇,不僅僅是目前的薪資待遇,還有在未來(lái)幾年薪資的上升空間。這些東西是招聘網(wǎng)站所不能直接體現(xiàn)的。

        2.2崗位需求量

        當(dāng)求職者尋找工作時(shí),往往會(huì)關(guān)心自己在這份工作中到底具有多少競(jìng)爭(zhēng)力,拋開(kāi)求職者本身的能力,競(jìng)爭(zhēng)力的另一個(gè)體現(xiàn)就是這份工作到底需要多少人,需要的人越多,競(jìng)爭(zhēng)就越小,就越容易找到工作。就招聘網(wǎng)站而言需要數(shù)據(jù)為求職者提供選擇工作的依據(jù)

        2.3各城市的同一崗位的比較性

        對(duì)于求職者來(lái)說(shuō),除了薪資的增長(zhǎng)起伏和競(jìng)爭(zhēng)力,還有一個(gè)重要的因素,那就是求職者希望的工作城市,雖然網(wǎng)絡(luò)上總是有報(bào)道說(shuō)這個(gè)城市收入水平達(dá)到多少,物價(jià)達(dá)到多少。但是,求職者不僅僅關(guān)心收入水平,也希望知道自己選擇的崗位更應(yīng)該去哪個(gè)城市工作。

        3 解決方案

        3.1 解決思路

        獲取到前程無(wú)憂網(wǎng)IT類的招聘信息后,針對(duì)IT類畢業(yè)生遇到的求職信息獲取等問(wèn)題,提供以下解決思路:

        (1)薪資增長(zhǎng)情況:將獲取到的招聘信息以城市和崗位為條件分組,計(jì)算每一組在不同工作經(jīng)驗(yàn)的最低薪資和最高薪資的平均水平。

        (2)崗位需求量:將獲取到的招聘信息以城市和崗位為條件分組,計(jì)算每一組的崗位需求人數(shù)總和。

        (3)同一崗位在不同城市的比較性:將獲取到的招聘信息以城市和崗位為條件分組,然后計(jì)算一個(gè)比較性的期望值,這個(gè)比較性的期望值通過(guò)公式“1/工作經(jīng)驗(yàn)?zāi)晗迣?duì)應(yīng)的數(shù)值*平均工資*需求人數(shù)(滿足工資高,需求人數(shù)多,工作經(jīng)驗(yàn)低,推薦指數(shù)越高的原則)”計(jì)算而得。

        3.2 數(shù)據(jù)獲取

        本文通過(guò)基于Python的Scrapy框架編寫(xiě)爬蟲(chóng),編寫(xiě)爬蟲(chóng)前先去前程無(wú)憂網(wǎng)站分析頁(yè)面的url請(qǐng)求序列,方便整理出編寫(xiě)爬蟲(chóng)邏輯。然后根據(jù)頁(yè)面信息和研究目的設(shè)計(jì)數(shù)據(jù)庫(kù)字段。再根據(jù)數(shù)據(jù)庫(kù)字段,配置item、根據(jù)頁(yè)面請(qǐng)求到的數(shù)據(jù)配置Field()進(jìn)行數(shù)據(jù)存入前處理。接著根據(jù)url請(qǐng)求的序列設(shè)計(jì)不同的回調(diào)函數(shù),并發(fā)起不同的請(qǐng)求獲取返回item。然后創(chuàng)建Proxy、UserAgent下載器實(shí)現(xiàn)動(dòng)態(tài)瀏覽器頭、隨機(jī)代理ip,失敗后更換ip繼續(xù)請(qǐng)求,提高爬蟲(chóng)的存活率和數(shù)據(jù)采集完整性。最后使用線程池獲取數(shù)據(jù)庫(kù)連接并保存數(shù)據(jù)到mysql數(shù)據(jù)庫(kù)。以下時(shí)獲取數(shù)據(jù)的關(guān)鍵代碼:

        allowed_domains = ['51job.com']

        start_urls=[‘https://search.51job.com/list/030800%252C230300%252C230200%252C070300%252C250200,000000,0000,01%252C37%252C38%252C40%252C32,9,99,%2520,2,1.html']

        def parse(self, response):

        post_urls=response.css("#resultList .el .t1").xpath('.//a/@href').extract()

        for post_url in post_urls:

        yield Request(url=parse.urljoin(response.url,post_url),callback=self.parse_detail)

        next_url = response.css(".dw_page ul li:last-child a::attr(href)").extract_first('')

        if next_url:

        yield Request(url=parse.urljoin(response.url, next_url), callback=self.parse)

        def parse_detail(self, response):

        item_loader = TempDataItemLoader(item=TempDataItem(), response=response)

        url = response.url

        salary_id = re.match(r'.*/(\d*).html', url, re.I)

        item_loader.add_value('salary_id', salary_id.group(1))

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

        當(dāng)數(shù)據(jù)獲取成功后,就需要把這些數(shù)據(jù)形成直觀的的圖表了,這里使用了Echarts.js插件。Echarts.js這個(gè)開(kāi)源可視化庫(kù)提供的一系列圖表,為此爬蟲(chóng)的數(shù)據(jù)展示提供了良好的支持。首先使用Django的ORM查詢數(shù)據(jù)庫(kù)中的數(shù)據(jù),這里只對(duì)就業(yè)推薦功能做以下說(shuō)明:

        當(dāng)使用Django查詢出數(shù)據(jù)后發(fā)現(xiàn),Django的ORM對(duì)復(fù)雜查詢與計(jì)算的支持并不好,于是采用了Pandas庫(kù)。

        # 將數(shù)據(jù)庫(kù)查出的數(shù)據(jù)轉(zhuǎn)換為Pandas的數(shù)據(jù)格式

        df = pandas.DataFrame(list(salary_data))

        # 使用pandas提供的函數(shù)對(duì)數(shù)據(jù)進(jìn)行清洗,將將復(fù)雜數(shù)據(jù)替換成數(shù)字。

        df = df.replace({'1年經(jīng)驗(yàn)': '1', '2年經(jīng)驗(yàn)': '2', '3-4年經(jīng)驗(yàn)': '3', '5-7年經(jīng)驗(yàn)': '4', '8-9年經(jīng)驗(yàn)': '5', '10年以上經(jīng)驗(yàn)': '6'})

        # 將數(shù)據(jù)以城市分組

        grouped = df.groupby('city__name')

        #遍歷每一個(gè)城市下,求出平均薪資和平均需求人數(shù)

        for city__name, group in grouped:

        experience_value = 0

        for experience, s in group.groupby('experience'):

        # mean()函數(shù)用來(lái)計(jì)算平均數(shù)(計(jì)算平均薪資 和平均需求人數(shù))

        s = s.mean()

        # 就業(yè)推薦指數(shù)

        experience_value += round(1 / int(experience), 6) *int(s['avg_salary']) * int(s['people_count'])

        3.4 處理結(jié)果

        首頁(yè)會(huì)每過(guò)5秒就隨機(jī)更換一個(gè)城市各IT職位的需求人數(shù)以及某城市某一職位不同工作經(jīng)驗(yàn)的薪資增長(zhǎng)情況,如圖1所示。

        薪資起伏頁(yè)面,展示的是搜索某一城市的某一職位,如蘇州的python職位就會(huì)呈現(xiàn)這個(gè)職位的不同工作經(jīng)驗(yàn)的薪資增長(zhǎng)情況,如圖2所示。

        需求人數(shù)頁(yè)面,展示了搜索某一職位呈現(xiàn)這個(gè)職位在不同城市的需求人數(shù)以及平均最高薪資和平均最低薪資,如圖3所示。

        推薦就業(yè)頁(yè)面展示的是搜索某一職位會(huì)出現(xiàn)這一職位在不同城市的推薦指數(shù)。這個(gè)指數(shù)根據(jù)公式:1/工作經(jīng)驗(yàn)?zāi)晗迣?duì)應(yīng)的數(shù)值*平均工資*需求人數(shù)(滿足工資高,需求人數(shù)多,工作經(jīng)驗(yàn)低,推薦指數(shù)越高的原則),如圖4所示。

        4 結(jié)語(yǔ)

        在大數(shù)據(jù)時(shí)代,數(shù)據(jù)分析往往能得到一些事物的規(guī)律,在大數(shù)據(jù)的分析結(jié)果下,人們往往能依據(jù)其中的某些規(guī)律,為自己的選擇提供一定的參考。通過(guò)爬取前程無(wú)憂招聘網(wǎng)站的數(shù)據(jù),分析出IT類行業(yè)的不同職位的一個(gè)招聘狀況,在一定程度上有效為IT類應(yīng)屆畢業(yè)生的就業(yè)選擇提供了直觀的數(shù)據(jù)參考,幫助IT類應(yīng)屆畢業(yè)生選擇自己的工作城市和職位。

        參考文獻(xiàn):

        [1]王全勝.Python在校園數(shù)據(jù)分析中的應(yīng)用--以一卡通消費(fèi)為例[J].電腦知識(shí)與技術(shù),2017(3)1-2.

        [2]涂小琴.基于Python爬蟲(chóng)的電影評(píng)論情感傾向性分析[J].研究與開(kāi)發(fā),2017(12)52-54.

        [3]魏冬梅,何忠秀,唐建梅.基于Python的Web信息獲取方法研究[J].軟件導(dǎo)刊,2018(1)41-43.

        [4]陳智,梁娟.基于Python的微博發(fā)表意向預(yù)測(cè)研究[J].智能處理與應(yīng)用.2018(4)56-59.

        [5]熊暢.基于Python爬蟲(chóng)技術(shù)的網(wǎng)頁(yè)數(shù)據(jù)抓取與分析研究[J].數(shù)字技術(shù)與應(yīng)用.2017(2)12-14.

        [6]趙麗娜.基于Python爬蟲(chóng)的借閱數(shù)據(jù)獲取[J].北華航天工業(yè)學(xué)院學(xué)報(bào).2018(8)61-62.

        作者簡(jiǎn)介:席一(1979~),男,山東聊城人,重慶第二師范學(xué)院數(shù)學(xué)與信息工程學(xué)院,講師,碩士。

        基金項(xiàng)目:重慶第二師范學(xué)院首批輔導(dǎo)員工作精品項(xiàng)目:“三源整合,六室聯(lián)動(dòng)”,探索“互聯(lián)網(wǎng)+”形勢(shì)下高校創(chuàng)新創(chuàng)業(yè)教育模式(項(xiàng)目編號(hào)201604);2018年重慶市教育委員會(huì)人文社會(huì)科學(xué)研究項(xiàng)目:思想政治教育角度下的大學(xué)生創(chuàng)新創(chuàng)業(yè)教育研究(項(xiàng)目編號(hào)18SKSZ042)。

        猜你喜歡
        數(shù)據(jù)分析
        我校如何利用體育大課間活動(dòng)解決男生引體向上這個(gè)薄弱環(huán)節(jié)
        Excel電子表格在財(cái)務(wù)日常工作中的應(yīng)用
        淺析大數(shù)據(jù)時(shí)代背景下的市場(chǎng)營(yíng)銷策略
        新常態(tài)下集團(tuán)公司內(nèi)部審計(jì)工作研究
        淺析大數(shù)據(jù)時(shí)代對(duì)企業(yè)營(yíng)銷模式的影響
        基于讀者到館行為數(shù)據(jù)分析的高校圖書(shū)館服務(wù)優(yōu)化建議
        科技視界(2016年22期)2016-10-18 14:37:36
        国产乱子伦精品免费无码专区| 久久99国产精一区二区三区| 亚洲成a人片在线观看无码3d | 狠狠做深爱婷婷久久综合一区| 久久精品人人做人人爽| 99精品视频在线观看| 日中文字幕在线| 色婷婷久久综合中文久久蜜桃av | 2020最新国产激情| 日本成年少妇人妻中文字幕 | 亚洲Va中文字幕无码毛片下载| 91在线观看国产自拍| 91精品国产高清久久福利| 美女用丝袜脚玩我下面| 免费成人电影在线观看| 亚洲av永久无码精品放毛片| 国产精品天天在线午夜更新| 亚洲自拍另类制服在线| 久久久午夜毛片免费| 国产丝袜美腿诱惑在线观看 | 麻豆精品传媒一二三区| 日本高清一区二区三区水蜜桃| 一区五码在线| av网站可以直接看的| 中文字幕女同人妖熟女| 成人片黄网站a毛片免费| 欧美孕妇xxxx做受欧美88| 精品久久久久久无码不卡| 久久综合一本中文字幕| 青青草手机在线免费视频| 久久久亚洲熟妇熟女av| 少妇高潮无套内谢麻豆传| 亚洲男人天堂2019| 人妻熟女妇av北条麻记三级| 真实夫妻露脸自拍视频在线播放| 天堂新版在线资源| 国产成人精品三级麻豆| 国产综合一区二区三区av| 中文字幕午夜精品一区二区三区| 国产成人av无码精品| 大肉大捧一进一出好爽视频|