谷歌开源Gumbo:纯C语言实现的HTML5解析库
http://www.csdn.net/article/2013-08-14/2816561-Gumbo-A-pure-C-HTML5-parser
在探讨完Google背后的开源力量后,今天向大家介绍Google开源的一款用C语言实现的HTML5解析库Gumbo,作为一款纯C99库,Gumbo解析时无需任何外部依赖。它主要是用来成为其他工具或库的一个构建块,如linters、验证器、模板语言、重构和分析工具。
目标及特征:
- 完全符合HTML5规范
- 强大,并且对于一些有问题的代码,能够灵活、有弹性地处理
- 简单的API,可以很容易地与其他语言捆绑
- 支持源位置和指针回到原始文本
- 轻巧、没有外部依赖
- 通过所有的html5lib-0.95测试
已在超过25亿个来自谷歌索引的页面中进行过测试
还未实现的目标
- 执行速度
- 支持C89
愿望清单(希望不久后能添加进去的功能)
- 支持最新修订的HTML5规范,以支持模板标签。
- 支持片段解析
- 非常全面的错误报告
- 与其他语言进行绑定
关于Gumbo的更多详情及安装、学习教程,大家可以访问其在Github上的托管地址。
国内镜像地址:https://code.csdn.net/OS_Mirror/gumbo-parser
谷歌开源Gumbo:纯C语言实现的HTML5解析库相关推荐
- c-ares 一个C语言的异步DNS解析库
c-ares是一个C语言的异步DNS解析库,可以很方便的和使用者的事件循环统一起来,实现DNS的非 阻塞异步解析,libcurl, libevent, gevent, nodejs都在使用. 下面摘自 ...
- c语言自定义的xml解析库,轻量级C语言实现的xml解析库minixml
搜索热词 1下载:http://www.msweet.org/downloads.PHP?L+Z3 2说明:@H_404_4@Mini-XML是一个小型的开源的XML解析器,采用 C 语言开发.该解析 ...
- Go语言——快速使用Markdown解析库
目录 go解析markdown markdown解析库 使用: 安全过滤: 例子: 关于Markdown的语法:Markdown语法文档(翻译) go解析markdown Markdown 是一种轻量 ...
- Go语言银联8583报文解析库,支持联小额免密付和银商聚合支付
很早之前就整过一个Go语言版的银联8583报文解析库,当时仅是8583报文的解析. 最近整合了进了银联小额双免交易和银商的聚合支付交易通道,这可以是网上最简单的8583报文解析库了. 银联双免支付通道 ...
- 了解Google的开源HTML5解析引擎Gumbo
谷歌开源Gumbo:纯C语言实现的HTML5解析库,的确是针对浏览器尤其是HTML5的研究人员是一个福音 看看网上描述的这些特征: 完全符合HTML5规范 强大,并且对于一些有问题的代码,能够灵活.有 ...
- java的开源项目哪里找,我想参加开源项目的开发,请问在网上去哪找这样的项目? 纯C语言的(非C++或JAVA)...
我想参加开源项目的开发,请问在网上去哪找这样的项目? 纯C语言的(非C++或JAVA)以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起 ...
- 谷歌开源能翻译101种语言的AI模型,只比Facebook多一种
大数据文摘出品 来源:VB 10月底,Facebook发布了一款可翻译100种语言的机器学习模型,微软发布了一款能翻译94种语言的模型,谷歌自然也不甘示弱. 继Facebook和微软后,谷歌开源了一种 ...
- python xlsx 样式 谷歌开源 样式_连续加班一周最终把所有的Python库整理出来了,愿各位早日学会Py-站长资讯中心...
MySQLdb,成熟的[MySQL]数据库模块, Baresql,SQL数据库包 ZODB,Python本地对象数据库.一个K-V对象图数据库. pickledb,简单和轻量级的K-V键值存储. Ti ...
- 各种NLP操作难实现?谷歌开源序列建模框架Lingvo
各种NLP操作难实现?谷歌开源序列建模框架Lingvo 自然语言处理在过去一年取得了很大进步,但直接关注 NLP 或序列建模的框架还很少.本文介绍了谷歌开源的 Lingvo,它是一种建立在 Tenso ...
最新文章
- Spring Boot 2.x整合Websocket(基于Spring Boot 2.x 前后端分离 iview admin vue 集成activiti工作流...
- boost::proto::display_expr相关的测试程序
- 使用.net资源文件时候发生的问题
- vasp 5.2编译方法
- js函数提示 vscode_为VSCode / Monaco Intellisence添加JavaScript类型提示
- 使用说明 思迅收银系统_便利店收银使用的收银系统应该取决于什么?
- 医疗行业的售前工程师如何撰写人工智能案例申请材料
- R7-3 出租 (20 分)
- GlobalSign 团队与世界领先的认证机构(CAs)合作 共同加强网络安全
- stylus 设置全局样式_在vue-cli 3中, 给stylus、sass样式传入共享的全局变量
- 风格之争:Coroutine vs Callback
- Chrome浏览器截取全屏(无需安装任何插件)
- db2和oracle更新xml大字段
- 设计模式09-组合模式
- _Linux中删除特殊名称文件的多种方式
- 七款顶级HTML5编辑器带你飞
- C++正则表达式regex库使用方法总结
- 微信小程序 版本更新及调试方法
- Scratch3.0----函数(1)
- Linux之日志服务及管理