iOS 爬蟲,抓取 HTML ,CSS XPath 解析數(shù)據(jù)

在做項目中發(fā)現(xiàn)一個問題,Android的渠道太多了,每次版本更新,都要去每個渠道查看版本是否更新完畢,很麻煩。

那么問題來了,是否可以通過爬蟲,把所有的渠道中關心的數(shù)據(jù)都爬下來,然后再整理呈現(xiàn),這樣子就可以方便運營和產(chǎn)品查看每個渠道的信息了。

爬蟲的方法和介紹的文章有很多了,一般都是通過服務器爬數(shù)據(jù)再整理,具體這個問題不需要做數(shù)據(jù)的記錄和計算,所有嘗試了用iOS做一個簡單的網(wǎng)頁解析,然后再整理數(shù)據(jù)做呈現(xiàn)。
在簡書上已經(jīng)有一篇不錯的文章只是把FireFox換成了Chrome,Chrome也有提取網(wǎng)頁XPath的功能。

Chrome 獲取XPath
Chrome 復制XPath

然后根據(jù)這個具體的需求,增加了一些本地讀取渠道信息和解析網(wǎng)頁信息的邏輯。

channelInfo.plist的內(nèi)容結構
特別說明一下,channelUpdateTimeXPathAttributeKey因為有些XPath拿到的數(shù)據(jù)是一個json串,需要通過一個key,才可以得到真正需要的內(nèi)容。

channelInfo.plist

解析html中的更新時間,先判斷是否可以解析為字符串,不行再通過key在字典中讀取。


解析html中的更新時間

具體問題具體分析吧,每個網(wǎng)頁的結構可能都不一樣,代碼可以看這里:傳送門

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容