自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

iOS開發(fā)中的Html解析方法

移動開發(fā) iOS
本文作者為大家介紹了在iOS開發(fā)中的Html解析方法,并同時提供了Demo代碼的下載鏈接,Demo 解析了某個網(wǎng)站(具體可在代碼中查看)的html網(wǎng)頁,提取了圖片以及標(biāo)題。

初次解析html,使用是網(wǎng)上的第三方類;我使用的是以下三個類,將其添加到項目中:

  1. #import "TFHpple.h"                     
  2. #import "TFHppleElement.h" 
  3. #import "XPathQuery.h" 

添加以上三個類必須添加一個庫,這個庫是:libxml2.2.dylib。并且還需要設(shè)置一些路徑參數(shù),否則會一直報錯;這個路徑的設(shè)置,在 targets中,在build settings搜索Header Search Paths,將debug和release設(shè)置不同的值;

debug的值設(shè)置成:/usr/include/libxml2

release的值設(shè)置成:${SDKROOT}/usr/include/libxml2

將以上的設(shè)置好了以后,就是使用的時候;將#import "TFHpple.h"添加到解析html的類中,再寫解析方法;

一般思路如下:

1.首先將網(wǎng)頁的html轉(zhuǎn)換成oc能夠認(rèn)識的NSString數(shù)據(jù);用到的方法如下:

  1. NSString *dataString = [NSString stringWithContentsOfURL:[NSURL URLWithString:htmlString] encoding:NSUTF8StringEncoding error:nil];  //htmlString是html網(wǎng)頁的地址 

2.將dataString轉(zhuǎn)換成NSData,給TFHpple類用

  1. NSData *htmlData = [dataString1 dataUsingEncoding:NSUTF8StringEncoding]; 

3.設(shè)置html中節(jié)點,根據(jù)節(jié)點取值,例如<p>.....</p>,可以用節(jié)點來取值;

如NSString *nodeString = @"//p";

使用htmlData和nodeString,解析自己需要的值:

  1. TFHpple *xpathParser = [[TFHpple alloc] initWithHTMLData:htmlData]; 
  2. NSArray *elements  = [xpathParser searchWithXPathQuery:nodeString];  //這個數(shù)組中就有需要的值 

(TFHppleElement中提供很多方法,可以用這些方法獲取elements的值,如- (NSArray *) children;)

Demo鏈接http://code4app.com/ios/%E8%A7%A3%E6%9E%90HTML/5167ca396803faf447000002

責(zé)任編輯:閆佳明 來源: oschina
相關(guān)推薦

2011-08-15 17:58:22

IOS開發(fā)編碼轉(zhuǎn)換

2018-08-09 20:47:41

2011-07-07 16:38:21

iOS UITableVie

2017-02-24 11:00:57

iOS抓取HTML解析數(shù)據(jù)

2015-03-18 09:29:12

iOS開發(fā)爭議

2010-09-28 10:33:59

HTML DOM Ch

2011-08-19 13:51:12

2013-06-27 14:33:00

2011-08-04 18:39:32

iOS XML

2009-09-02 16:21:02

C#解析Html

2015-10-20 11:22:34

iOS開發(fā)Git

2011-08-16 16:14:07

IOS開發(fā)HTML5通用接口

2011-08-16 16:24:51

IOS開發(fā)HTML5編碼

2013-03-27 11:33:32

iOS開發(fā)iOSjson解析方式

2009-09-24 13:25:58

Hibernate m

2015-07-20 10:54:47

IOS提高效率工具

2011-08-02 11:30:41

iOS開發(fā) 郵件發(fā)送

2009-09-22 18:26:48

2013-04-01 17:05:28

2013-07-22 13:48:55

iOS開發(fā)ASIHTTPRequ使用Cookie
點贊
收藏

51CTO技術(shù)棧公眾號