xml - 在浏览器外部以编程方式应用 XSL 转换

标签 xml automation python-3.x xslt

我有 XML 数据,希望能够通过 XSL 转换在浏览器中显示,并使用 XeLaTeX 进行编译。在 XML 文件中,我已将样式表设置为浏览器的样式表,目前,要获得 LaTeX 输出,我必须进入 XML 文件,更改它,在浏览器中打开它,将其复制到文件中,保存文件并对其运行 XeLaTeX。

相反,我想保留与将其转换为 XHTML 的 XSLT 样式表关联的 XML 文件,并且只需要一个构建脚本:

  1. 将 LaTeX XSL 转换文件应用到 XML 文件,并将结果写入 .tex 文件。
  2. 针对它运行 XeLaTeX。
  3. 再次对其运行 XeLaTex(文档需要第二遍)。
  4. 清理日志文件等,除非指示不要这样做。

我知道如何做#2-#4。实现#1 的最佳方法是什么?例如,是否有将 XSL 转换应用于 XML 文档的 Python3 配方?

最佳答案

如果您的样式表是用 XSLT 1.0 编写的,您可以通过 lxml 使用 libxslt (libxml2 和 libxslt python 绑定(bind))。寻找lxml examples (链接到 Google 网络缓存,因为 http://lxml.de 上没有实际页面)

关于xml - 在浏览器外部以编程方式应用 XSL 转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7613345/

相关文章:

java - android.widget.TextView 无法转换为 android.widget.EditText 5

python - 在 Python 中,如何引用包含连字符的 XML 标记

javascript - html/javascript 自动从提交按钮获取链接(也许用 python 自动化?)

shell - 在 shell 文件中使用 xautomation

android - 在工具栏下显示内容

xml - 在 bash 脚本中访问 xml 属性

c# - 当站点位于多台服务器上时,每分钟运行自动化任务的最佳方法

python - 阶乘数字和谜题、时间复杂度调查

python - 如何获取仅包含一项的字典的键/值对?

python - 写入 csv,每个项目位于单独的列中