Infrae 开发的常用Python库,包含可重用组件。
项目描述
这是一个常用的Python库,包含可重用组件,由Infrae开发。
芽,虽然主要与XML相关,但没有这样的功能性目标。它的目标而是组织性的
使项目之间(如Silva和Infrae的topicmaps实现)能够复用代码
允许我们编写没有外部依赖的现代、纯Python代码——它只依赖于Python标准库。
允许我们编写坚实的代码,由大型单元测试套件覆盖。没有外部依赖和关注现代代码使这变得更容易。
虽然 Sprout 目前主要用于 Infrae 内部,但其中的代码足够通用,也可用于您的项目。
Sprout 主要关注 XML 相关内容。它具有以下功能:
sprout.saxext,一个使编写基于 SAX 的代码更加容易的库。
htmlsubset,一个易于创建安全且健壮的 HTML 子集的系统,可以处理错误的用户输入。
代码仓库
本扩展的代码可以在 Mercurial 中找到:https://hg.infrae.com/Sprout
变更记录
1.1.1 (23/05/2013)
改进 sprout.saxext xmlimport 的 getData 和 clearData 方法,一次性清除与导入器相关的所有数据。
1.1 (05/03/2013)
改进 sprout.saxext xmlimport 和 xmlexport 类
使自定义选项可用于处理器。这些选项必须在使用前通过 registerOption 定义。
支持对临时文件和已打开文件的处理。这在大型导入和导出时效率更高,并防止创建大型 StringIO 对象。
使用这些类的所有代码都需要更新以与新版本兼容。
1.0.5 (03/09/2012)
在处理器中添加两个缺少的方法,以实现前缀映射,以便遵循 SAX 处理器。
xmlexport 处理器现在接受位置参数和关键字参数,并将其传递给子处理器。
1.0.4 (07/11/2011)
为 xmlexport 处理器添加缺少的 characters 方法,以便遵循 SAX 协议。
1.0.3 (15/07/2010)
删除已弃用的 silvasubset。
添加支持通过适配器注册生产者。
saxify 现在作为一个验证选项来验证在执行任何操作之前传入的 XML 的有效性。
更新和清理测试。
1.0.2 (03/11/2009)
修复 xml 导入器的线程安全问题。
1.0.1 (05/10/2009)
使用内置的 set 替代已弃用的 sets 模块(当可用时)。
1.0 (25/09/2008)
将扩展打包为 egg。
0.9
当向 <a> 标签添加标题属性时,现在可以识别它们,但不会对它们做任何处理。之前,存在 'title' 属性会破坏链接。
0.8
无变更记录。
0.7
为 html2sax 添加了对十六进制实体(例如,  表示非换行空格)的支持。
添加了对限制 HTML 的支持,从较大的 HTML 字符串中提取安全的、格式良好的片段。可以处理格式不良的 HTML。
0.6.2
以更简单、更正确的方式将 sprout 设置为 Python 包。
0.6.1
sax2html 现在处理 HTML 中的空属性,因此 <option selected> 被转换为 <option selected="selected">。
0.6
在 Silva 子集中,接受嵌套的 <b>、<i> 和 <a href="">。
允许在导入之前通过可选的过滤处理器传递事件。
0.5.1
在 Silva 子集中,将 \n 视为 <br>。
在 html2sax 中,我们现在确保任何在 HTML 中不能作为单例的标签都保持打开状态,通过添加一个额外的空格字符事件来实现。
0.5
首次公开发布。
项目详情
Sprout-1.1.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ce00bb688780f9ff13e2a9877fb830ccf180089e4e2a41e2199b8176497c789d |
|
MD5 | 854e170f5e731ff623eb6314c0122f69 |
|
BLAKE2b-256 | a0f8e7c1667a19f6ec974a37a2b368cb2db71a9dbe661af911e76a070c711c93 |