上一期蕾奧技術(shù)研究文章中,介紹了網(wǎng)址規(guī)則,并利用網(wǎng)址規(guī)則采集了南山區(qū)所有二手房住宅小區(qū)頁面的網(wǎng)址。本期將繼續(xù)在已獲取的網(wǎng)址上,借助網(wǎng)頁源代碼中的標(biāo)簽,提取頁面中的目標(biāo)數(shù)據(jù)。
2. 通過源代碼中的標(biāo)簽截取頁面中的信息
在測試網(wǎng)址采集結(jié)果正常后,點(diǎn)擊上方標(biāo)簽“第二步:采集內(nèi)容規(guī)則”。在左上部的“頁面內(nèi)容標(biāo)簽定義”中,刪除軟件已有的默認(rèn)標(biāo)簽。
這一步是用頁面標(biāo)簽來定位數(shù)據(jù)。原理是在源代碼中找到數(shù)據(jù)前后出現(xiàn)的兩段代碼,且保證第一段代碼在網(wǎng)頁中是唯一存在的,則軟件會(huì)自動(dòng)采集兩段代碼之間的數(shù)據(jù)。
接下來開始分析網(wǎng)頁元素,本篇以Google Chrome瀏覽器為例。在頁面空白處單擊右鍵,單擊“查看網(wǎng)頁源代碼”和“檢查”,會(huì)在新標(biāo)簽頁中打開網(wǎng)頁源代碼,并在瀏覽器右側(cè)會(huì)顯示開發(fā)者工具。
單擊開發(fā)者工具左上角的選擇元素按鍵,點(diǎn)擊頁面上的標(biāo)簽,即可在開發(fā)者工具中看到對應(yīng)代碼。
此處以價(jià)格為例,當(dāng)鼠標(biāo)指到價(jià)格標(biāo)簽時(shí),開發(fā)者模式中可以看到對應(yīng)代碼。
展開該代碼塊可見,average是二手房均價(jià)標(biāo)簽,unit是單位標(biāo)簽。
于是在網(wǎng)頁源代碼的頁面中Ctrl+F搜索這兩個(gè)標(biāo)簽,顯示結(jié)果為
說明該網(wǎng)站在此處將價(jià)格隱藏。于是換一個(gè)思路,既然搜不到標(biāo)簽,直接搜價(jià)格“80233”,可以看到這次的結(jié)果變成了
這段數(shù)據(jù)為頁面中歷史售價(jià)曲線圖的數(shù)據(jù),而comm_midprice則為當(dāng)前均價(jià)的標(biāo)簽。通過頁面搜索顯示,comm_midprice在這段代碼中是唯一的。
因此復(fù)制該標(biāo)簽到價(jià)格前的所有內(nèi)容,即"comm_midprice":",作為前段標(biāo)簽。
在火車采集器的“頁面內(nèi)容標(biāo)簽定義”部分,點(diǎn)擊“添加”,設(shè)置標(biāo)簽名為“均價(jià)”,提取數(shù)據(jù)方式默認(rèn)為“前后截取”,粘貼上文復(fù)制的開始字符串,再從代碼中復(fù)制價(jià)格后的引號作為結(jié)束字符串。單擊“確定”保存。
同樣的方法,提取物業(yè)類型數(shù)據(jù)。選擇頁面上的物業(yè)類型數(shù)據(jù)后,可以看到開發(fā)者模式中顯示的對應(yīng)標(biāo)簽為:
在網(wǎng)頁源代碼中搜索該標(biāo)簽,顯示結(jié)果僅有一個(gè):
回到火車編輯器中添加該標(biāo)簽為:
以同樣的方式,添加物業(yè)費(fèi)、總建面積、總戶數(shù)、建造年代、停車位、容積率、綠化率、開發(fā)商、物業(yè)公司等標(biāo)簽。