1. 程式人生 > >奔五的人學iOS:swift獲取網頁並解析需要的內容(1)

奔五的人學iOS:swift獲取網頁並解析需要的內容(1)

前言

為了能夠寫出有價值的應用,除了遊戲,即便是遊戲也需要網路支援才能讓使用者產生粘性,遊戲中比較獲取的等級、積分等如果只儲存在手機上,則無法與其他好友進行比較和互動,讓我們的應用(或遊戲)的互動性大打折扣。如果應用的內容完全由自己來產生,則需要開發服務端、介面,還需要伺服器或者虛擬空間,更主要的還運營人員,更有甚者還要編輯、槍手等等,作為一個普通的開發人員,如果按這樣的思路那就無法出產品了。
在資訊時代,資訊無處不在,我們即使沒有這些資源,也不用怕,我們信奉拿來主義,將網路上的資訊拿來展示即可,當然在拿別的資訊時,最好也提供資訊的出處,如果資訊明顯提示不給其他人使用,那就最好別拿。
今天我們就來看看如何從網路獲取需要的網頁並解析出需要的內容。

我們將通過本文獲得以下能力
- pod簡單使用
- 通過AFNetworking抓取網頁
- 通過DJRefresh分頁載入
- 通過Hpple進行頁面解析

pod的簡單使用

  • pod init
    用xcode生成一個新的工程Top4Geek,在控制檯進入工程所在目錄,在命令列下輸入:
    pod init
    會在工程目錄下生成podfile檔案
  • podfile編寫
    我們使用文字編輯器開啟podfile檔案,裡面已經添加了部分內容,我們按以下內容進行修改
platform :ios, '8.0'
use_frameworks!

target 'Top4Geek'
do pod 'DJRefresh' pod 'AFNetworking' pod 'MBProgressHUD' pod 'hpple',:git => 'https://github.com/topfunky/hpple.git' pod 'SwiftyJSON', :git => 'https://github.com/SwiftyJSON/SwiftyJSON.git' end

在這裡,我們使用csdn的極客頭條來完成這個練習,需要的元件有:

元件 功能
DJRefresh 下拉、上拉載入分頁內容
AFNetworking 獲取網頁內容
MBProgressHUD 載入時介面提示
hpple html解析工具
SwiftyJSON json解析工具

- pod update
然後在控制檯輸入命令
pod update
cocoapods會為我們下載各元件並重新生成一個Top4Geek.xcworkspace專案組檔案,我們開啟這個Top4Geek.xcworkspace專案組檔案,以後對專案的組織均通過該專案組工程檔案。