几周前,由于需要从网页中提取一部分内容我们就一直在寻找一个可以在iPhone可用的简单的html解析器。我们在该贴中找到了一个名为hpple的漂亮封装。使用该库的简单步骤如下:
包含并链接libxml2:
- 展开Targets
- 双击项目名
- 选择所有配置
- 搜索Header Search Path
- 加入一行并选中recursive选项: ${SDKROOT}/usr/include/libxml2
- 搜索Other Linker Flag
- 加入一行:-lxml2
截屏如下:
从如下地址下载源码:
git clone git://github.com/topfunky/hpple.git
将如下代码拖拽到项目中:
TFHpple.h
TFHpple.m
TFHppleElement.h
TFHppleElement.m
XPathQuery.h
XPathQuery.m
就这些。接下来就可以试着写些代码了。
- // Don't forget
- // #import "TFHpple.h"
- NSData *htmlData = [[NSString stringWithContentsOfURL:[NSURL URLWithString: @"http://www.objectgraph.com/contact.html"]] dataUsingEncoding:NSUTF8StringEncoding];
- TFHpple *xpathParser = [[TFHpple alloc] initWithHTMLData:htmlData];
- //get the page title - this is xpath notation
- NSArray *elements = [xpathParser search:@"//h3"];
- TFHppleElement *element = [elements objectAtIndex:0];
- NSString *myTitle = [element content];
- NSLog(myTitle);
- [xpathParser release];
- [htmlData release];
完整的项目代码从此下载。
原文链接:http://blog.objectgraph.com/index.php/2010/02/24/parsing-html-iphone-development/