浅谈html解析

最近的一个ios项目中需要把服务端的html代码进行解析,获取其中的排版以及文本的样式(字体颜色,大小,加粗,居中等)

这其中就需要用html解析库,ios中常用的功能比较完善的解析库TFHpple,所以开始使用的也是该库,但是根据项目的实际情况,解析代码的时候需要从外到内遍历所有的节点,但是TFHpple并没有提供树形的节点,所以在后来又不得不寻找一个新的方案来代替,经过搜索发现,GDataXMLNode 库可以将html转换成xml格式,并且把所有节点使用树形结构存储,这就使得从外到内的递归所有节点成为了可能!

由于后端配置html代码中主要以table的形式,所以在递归的时候需要单独处理以下节点

非根节点 table  tr td strong p label span 

根节点 text input select textarea ,遇到根节点跳出

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,252评论 4 61
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,523评论 25 708
  • 当下有几个问题你必须问清楚自己 我为什么要转身? 我想要什么样的生活? 我想干什么工作? 我能干什么工作? 自己能...
    流石生花阅读 180评论 0 0
  • 译者心得: 即使是看起来非常简单的搜索功能的设计,都包含着非常多的细节,每一个细节都可能影响体验。如何去考虑到这么...
    ux2017阅读 813评论 1 3