将HTML标记转换为RTF文档
我有一个包含嵌入HTML内容的XML文档,我想把它转换成RTF格式的输出文件。这个XML文档里有一些用<li>, <p>, <b>
等HTML标签装饰的元素,我希望这些内容能被转移到生成的RTF文件里。
目前我能做到的步骤如下:
- 把XML标签的内容提取为字符串(里面包含了用于换行、段落和列表的HTML标签)
- 把这些XML标签的内容写入一个RTF文件。
我使用Python脚本来完成这个转换。同时,我还用到了ElementTree(用来解析输入的XML)和PyRTF-NG(用来把HTML转换成RTF),这个库可以处理表格和其他特殊格式。目前为止,我已经成功获取了我需要的所有内容,除了HTML的“标记”部分(也就是把HTML格式的标签转换成实际的RTF格式)。具体来说,我的意思是,如果我的RTF转换器遇到<ol><li>
标签,它应该在RTF中创建一个有序列表,而不是直接把<ol><li>
标签原封不动地放进RTF里。
有没有人知道Python有没有什么内置的调用可以让我做到这一点,或者有没有其他的Python库可以满足我完成RTF全转换的需求。
谢谢!
1 个回答
3
最好的免费转换工具是LibreOffice,你可以直接在终端的命令行中使用它,具体可以参考下面的代码:
libreoffice --convert-to
同样,这个转换工具也可以通过Python间接调用,使用的是UNO桥接技术,相关信息可以查看以下链接: