999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Jsoup爬蟲的BOSS直聘信息爬取

2023-06-15 11:11:07張鵬
無線互聯科技 2023年2期

張鵬

摘要:當前,就業成為人們生產生活的重要主題,隨著互聯網的飛速發展,招聘網站成為求職者就業的主要通道,網站中的招聘職位雖然豐富,但較難迅速獲取崗位中的重要信息。文章采取Jsoup網絡爬蟲技術,爬取了BOSS直聘網站中天津市的Java崗位信息,并使用POI技術將崗位中的重要信息經過數據處理保存為本地Excel文件,便于求職者直觀地對所搜索的崗位進行篩選判斷,具有良好的實用價值。

關鍵詞:Jsoup;網絡爬蟲;Boss直聘

中圖分類號: TP392? 文獻標志碼:A

0 引言

隨著互聯網的迅猛發展,就業方式已由傳統的線下招聘逐步轉變為高效快捷的網絡求職,通過各類招聘網站尋找崗位成為人們求職的主要方式,其中,BOSS直聘憑借其獨創的“找工作,與老板談”模式成為求職網站,特別是互聯網行業求職的主流網站之一。雖然通過網站可以便捷地查詢到崗位的需求信息,但是,人們在這些冗余的崗位需求信息中很難找到貼合自身的崗位信息,且不容易掌握某個崗位的薪資平均水平、分布地域等重要數據。

為了快速獲取某類型崗位的全部招聘信息,便于用戶快速篩選薪資、地域等實用數據,本文采用Jsoup的爬蟲技術,以java作為崗位關鍵字,將BOSS直聘網站上的主要招聘信息逐頁爬取并保存到本地Excel文件中,同時進行數據預處理,方便求職者直觀地對所搜索的崗位進行研究與選擇。

1 招聘信息爬取研究現狀

國內已存在較多學者使用爬蟲技術爬取招聘網站的案例。例如,孫暖等[1]采用Scrapy框架,基于Python語言設計爬蟲采集方案并實現了面向獵聘、拉鉤等招聘類網站的數據采集,最終成功獲取50 000余條數據。梅杰[2]采用網絡爬蟲技術獲取智聯招聘網站中的互聯網行業數據,并對獲取的數據集進行刪除、轉換。毛遂等[3]采取Python爬蟲對51Job招聘網站上的Python相關崗位進行爬取,并對爬取的本地數據進行可視化分析。

為解決招聘網站信息不直觀的問題,本文將對所用技術進行分析,設計爬蟲模型并完成代碼實現,以便呈現出清晰直觀的招聘崗位現狀,為相關崗位的人才提供良好的職業決策判斷。

2 相關技術分析

2.1 網絡爬蟲的原理

隨著互聯網的飛速發展,網絡成為數據與信息的載體中心,挖掘這些數據背后的意義尤為重要。網絡爬蟲是一種程序代碼或者腳本文件[4],可以遵循一定的規則自動獲取網站上的數據。

2.2 Jsoup技術簡介

Jsoup是一款HTML解析器,擁有十分方便的API處理HTML文檔,比如,參考了DOM對象的文檔遍歷方法,參考了CSS選擇器的用法等等,因此,可以使用Jsoup快速地爬取頁面數據。

2.3 POI技術簡介

Apache POI是用Java編寫的免費開源的跨平臺的Java API,提供對Microsoft Office格式檔案讀和寫的功能。POI也用于操作Excel,其中,Excel中的工作簿、sheet、行和單元格都可以在POI中找到相應的對象進行操作[7]。

3 爬取招聘信息模型設計與實現

招聘信息爬取功能的核心是首先通過攜帶請求對目標網頁發出請求并取得服務器響應,接著將獲得的響應內容(Document)通過Jsoup進行解析,封裝為實體類對象的集合,其中,翻頁功能使用遞歸調用方法實現。在獲取到所有的招聘數據后,對數據進行預處理,并將其保存為本地Excel文件。爬取流程如圖1所示。

3.1 分析網頁URL,確定訪問路徑

BOSS直聘是一個動態網頁,需要分析其URL來實現崗位關鍵字、城市、頁碼等參數的填充。該網站崗位搜索首頁URL為https://www.zhipin.com/web/geek/job,是不變部分,其后需要添加3個參數,分別為崗位關鍵字query、城市關鍵字city和頁碼page。

將query設置為java,city設置為天津,城市代碼為101030100,訪問第一頁時,page參數可省略,因此可以得到天津市java崗位的招聘信息URL為:

https://www.zhipin.com/web/geek/job?query=java&city=101030100

使用Jsoup.connect(url)獲取連接,攜帶header發起請求,將網頁保存在Document對象中。

3.2 分析網頁結構

訪問招聘信息URL,得到天津市java崗位的第一頁,頁面內有30個招聘信息。利用谷歌瀏覽器的F12開發者工具查看所要的爬取內容在網頁上對應的標簽,可以得到它的屬性、HTML代碼等。對網頁進行分析發現,每一個招聘信息都是以

  • 的列表標簽保存,而崗位名稱、薪資、地點等重要信息都放于li這個節點下。因此,調用Jsoup提供的API,使用CSS選擇器獲取所有招聘信息,封裝為網頁中的元素集合。

    Listlist = ?????doc.getElementsByClass("job-card-wrapper");

    3.3 將網頁內容封裝為對象集合

    本文定義了一個核心方法getBossTJList(String url, String area),用于將網頁內容封裝為招聘信息List。其中url參數為招聘信息URL,area參數為要搜索的崗位關鍵字,設置該參數旨在方便求職者隨時切換求職崗位。

    依據網頁元素集合List,每一個Element代表一個招聘信息,通過對其進行for循環,提取主要的招聘信息如崗位名稱、薪資、公司名稱、地理位置、學歷要求等。部分代碼如下:

    //崗位名稱

    String job_title = e.getElementsByClass("job-title").text();

    //薪資

    String salary = e.getElementsByClass("salary").text();

    //地理位置

    String job_address = e.getElementsByClass("job-area").text();

    本文使用Job實體類對象存儲招聘信息,每獲取一個Element中的主要招聘數據,就將它們封裝為一個Job對象。設置全局靜態變量集合job_list,將Job對象依次添加進集合中。

    3.4 遞歸實現翻頁功能

    BOSS直聘網站的頁碼部分位于

    的分頁對象中,在該div模塊中存在“頁數+2個”標簽,多出來的2個代表“上一頁”和“下一頁”按鈕。在某頁爬取結束后,獲取當前頁面的頁碼,并將其加1來指定下一頁面。當前所在頁的標簽,擁有特定的class="selected"屬性。

    int currentPage =

    Integer.parseInt(page.get(0).getElementsByClass("selected").text());

    currentPage+=1;

    當前頁獲取完畢后,應判斷是否需要繼續遞歸調用getBossTJList()方法獲取下一頁;若當前頁為尾頁,則停止調用。將標簽的數量減去2,可直接獲取總頁數。核心代碼如下:

    Thread.sleep(3000);

    if (currentPage<=lastPage){

    String href = "&"+page+"="+currentPage;

    getBossTJList(Commons.BOSS_JOBURL+href,area);

    }

    采用遞歸來逐頁遍歷招聘信息,最終可以得到300條數據。手工降低執行頻率,Thread.sleep(3000)是每3秒執行一次調用,通過模擬人點擊的方式達到反爬蟲的目的。

    3.5 保存Excel數據

    3.5.1 設置文件路徑

    定義了一個getExcel(String area)方法,area參數為要搜索的崗位關鍵字,設置該參數用來進行本地Excel文件按崗位命名,命名規則為"D:\\天津-"+area+".xls"。

    3.5.2 遍歷招聘信息,保存文件

    調用HSSFWorkbook的構造方法,新建一個表格文件。調用其createSheet(sheetname)方法創建sheet,本文中sheet名稱為崗位關鍵字area。使用sheet對象的createRow(rownum)方法創建第一行,第一行中分別添加序號、崗位名稱、薪資、公司名稱、工作地址、經驗要求、學歷要求7列。遍歷job_list對象,填充Excel表格對象,使用HSSFWorkbook的write()方法寫入本地,即可保存Excel文件。

    3.6 數據的預處理

    經爬取后的招聘信息中,薪資顯示為“5K~8K”,將工資單位采用“元/月”進行統一,并對工資范圍區間用其均值進行取代,如“5K~8K”,顯示為6 500元/月,清晰直觀,便于求職者篩選崗位。根據數據清洗原理對空缺值進行處理[8]。最終呈現的Excel文件如圖2所示。

    4 結語

    面對日趨嚴峻的就業形勢,僅憑線下的宣講招聘、單一的網絡簡歷投遞已經不能滿足人們迫切的就業需求。本文選用互聯網就業網站BOSS直聘,其崗位豐富,但無法對招聘數據進行提取和便捷篩選。利用Jsoup技術對BOSS直聘的數據進行爬取,整合公司位置、薪資單位等有效信息。整個過程快速便捷,針對性強,能夠將較為冗余的信息變得更加精簡,符合當前大數據時代的發展趨勢。

    參考文獻

    [1]孫暖,曹小平,劉軍.基于Python的互聯網招聘數據采集技術[J].信息與電腦(理論版),2020(18):161-163.

    [2]梅杰.基于關聯規則的網絡招聘信息挖掘與分析[D].貴陽:貴州大學,2021.

    [3]毛遂,毛紅霞.基于51job網站招聘信息的爬取與分析——以Python技術崗位為例[J].網絡安全技術與應用,2021(4):47-49.

    [4]熊艷秋,嚴碧波.基于jsoup爬取圖書網頁信息的網絡爬蟲技術[J].電腦與信息技術,2019(4):61-63.

    [5]王曉東.Apache POI組件批量操作Excel文件的應用探索[J].金融科技時代,2019(6):47-49.

    [6]劉萍,劉瑞文,胡秀麗.基于圖書借閱行為的數據預處理方法研究[J].內蒙古科技與經濟,2020(19):121-122,161.

    (編輯 何 琳)

    BOSS Zhipin information crawl based on Jsoup crawlers

    Zhang? Peng

    (Tianjin Electronic Information Vocational and Technical College, Tianjin 300350, China)

    Abstract:? At present, employment has become an important theme of peoples production and life. With the rapid development of the Internet, recruitment websites have become the main channel for job seekers to obtain employment. Although there are many recruitment positions in the websites, it is difficult to quickly obtain important information in the positions. The article adopts Jsoup web crawler technology to crawl the Java post information of Tianjin in BOSS Zhipin website, and uses POI technology to process and save the important information in the post into local Excel file, which is convenient for job seekers to screen and judge the searched posts intuitively, and has good practical value.

    Key words: Jsoup; web crawler; BOSS Zhipin

  • 主站蜘蛛池模板: 久久伊人久久亚洲综合| 性做久久久久久久免费看| 国产尤物在线播放| av无码一区二区三区在线| AV老司机AV天堂| 91精品最新国内在线播放| 国产91在线|日本| 日本午夜精品一本在线观看| 噜噜噜综合亚洲| 亚洲人成亚洲精品| 1024你懂的国产精品| 91探花国产综合在线精品| 九九线精品视频在线观看| 91在线播放免费不卡无毒| 国产成人综合网| 四虎成人精品| 日本免费精品| 91无码人妻精品一区二区蜜桃| 啦啦啦网站在线观看a毛片| 无码AV日韩一二三区| 国产91高清视频| 欧美精品另类| 亚洲永久精品ww47国产| 国产真实自在自线免费精品| 欧美日韩精品一区二区在线线| 久久久国产精品免费视频| 成人国产精品2021| 中国一级特黄大片在线观看| 免费xxxxx在线观看网站| 亚洲va欧美va国产综合下载| a天堂视频| 亚洲美女一级毛片| 亚洲乱码在线视频| 国产毛片网站| 夜色爽爽影院18禁妓女影院| 看你懂的巨臀中文字幕一区二区| 日韩无码视频播放| 亚洲欧洲日产国产无码AV| 国产高清无码麻豆精品| 亚洲午夜福利精品无码不卡 | 91视频国产高清| 538精品在线观看| 亚洲成人黄色在线| 欧美日韩导航| 国产精品久久久久久久久久久久| 超清无码一区二区三区| 免费在线观看av| AV无码无在线观看免费| 亚洲av无码成人专区| 老司机午夜精品网站在线观看| 久久综合丝袜长腿丝袜| 中文字幕啪啪| 亚洲欧美一区二区三区图片| 奇米影视狠狠精品7777| 国产国拍精品视频免费看| 三区在线视频| 国产美女在线免费观看| 在线永久免费观看的毛片| 99精品视频在线观看免费播放| 国产无遮挡猛进猛出免费软件| 99中文字幕亚洲一区二区| 伊人久久久大香线蕉综合直播| 国产亚洲精品91| 国产三级成人| 久久综合色天堂av| 精品三级网站| 国产久草视频| 精品国产成人三级在线观看| 精品一区二区三区无码视频无码| 国产va在线| 91综合色区亚洲熟妇p| 无码国内精品人妻少妇蜜桃视频| 欧美日本激情| 国产三级毛片| 久久6免费视频| 久久99精品国产麻豆宅宅| 免费无码网站| 91九色国产porny| 国产精品夜夜嗨视频免费视频| 国产精品偷伦视频免费观看国产| 中文字幕亚洲综久久2021| 在线五月婷婷|