前面介紹了發(fā)送HTTP請求獲取服務(wù)器返回的數(shù)據(jù)、數(shù)據(jù)通過re庫進(jìn)行數(shù)據(jù)提取政基。這節(jié)就寫一個小案例,爬一下boss直聘中關(guān)于爬蟲的招聘信息闹啦。
打開boss直聘官網(wǎng)腋么,輸入爬蟲,點擊搜索按鈕亥揖。
進(jìn)入到列表頁面珊擂,點擊第二頁圣勒,第三頁等等,觀察url路徑的變化摧扇,可以發(fā)現(xiàn)page=2就是第二頁圣贸,后面的那個ka=page-2沒什么用,
記錄一下url地址扛稽,然后使用urllib.request模塊吁峻,發(fā)送一個HTTP請求,測試一下是否是我們需要的數(shù)據(jù)在张。
這個頁面的HTML里面帮匾,需要的數(shù)據(jù)只有招聘的信息啄骇,<div class="job-primary">...</div>標(biāo)簽中的數(shù)據(jù)就是一條招聘信息。
接下來使用正則表達(dá)式進(jìn)行匹配瘟斜,先獲取整個<ul>缸夹,然后再批量獲取<li>:
接下來根據(jù)每一個<li>螺句,提取有價值的信息虽惭,保存到一個模型類中,并且統(tǒng)一存放到一個列表里:
接下來需要將提取的數(shù)據(jù)寫入本地蛇尚,這里使用寫入到記事本中:
運行程序芽唇,在文件的當(dāng)前目錄中,就會有招聘信息
隨便打開一個文本文件取劫,查看一下里面的內(nèi)容匆笤,
到此Boss直聘上有關(guān)爬蟲的招聘信息,抓取完畢勇凭。