Swift实现的轻量快速的 XML/HTML 解析器:Fuzi

Fuzi   2015-09-20 09:01:11 发布
您的评价:
     
5.0
收藏     1收藏
文件夹
标签
(多个标签用逗号分隔)

Swift实现的轻量快速的 XML/HTML 解析器。

Mattt Thompson大神的 Ono(斧) 是iOS/OSX平台上非常好用的一个XML/HTML 解析库。用ObjectiveC实现的Ono在Swift的应用里虽然可以使用,却有诸多不便。因此鄙人参照了Ono对libxml2的封装方式,对类和方法进行了重新设计弄出了这个小库。同时修正了Ono存在的一些逻辑上和内存管理方面的bug。

中文README

https://github.com/cezheng/Fuzi/blob/master/README-zh.md

示例代码:

let xml = "..."
do {
  let document = try XMLDocument(string: xml)
 
  if let root = document.root {
    // Accessing all child nodes of root element
    for element in root.children {
      print("\(element.tag): \(element.attributes)")
    }
 
    // Getting child element by tag & accessing attributes
    if let length = root.firstChild(tag:"Length", inNamespace: "dc") {
      print(length["unit"])     // `unit` attribute
      print(length.attributes)  // all attributes
    }
  }
 
  // XPath & CSS queries
  for element in document.xpath("") {
    print("\(element.tag): \(element.attributes)")
  }
 
  if let firstLink = document.firstChild(css: "a, link") {
    print(firstLink["href"])
  }
} catch let error {
  print(error)
}

项目主页:http://www.open-open.com/lib/view/home/1442670891852

扩展阅读

Swift 2.0 轻量快速的XML/HTML解析器Fuzi
iOS开发者必备:自己总结的iOS、mac开源项目及库
iOS 资源大全
iOS、mac开源项目及库汇总
iOS 开发类库

为您推荐

Swift实现的轻量快速的 XML/HTML 解析器:Fuzi
iOS 苹果官方Demo合集
Android类库框架汇总:awesome-android
Java 解析 XML
python批量下载图片的三种方法

更多

Fuzi
XML操作类库
相关文档  — 更多
相关经验  — 更多
相关讨论  — 更多