使 saxon-c 在 Python 中可用

2024-03-18

我刚刚读到 Saxon 现在可用于 Python,这非常有趣而且很好,但是任何人都可以写一篇关于如何使其可用于 Python/Anaconda/WingIDE 或类似的教程吗?我习惯于使用 pip 或 conda 安装,并指向一个包/轮子以集成到我的环境中,但我从来没有从头开始,因为感觉我在这里做,或者我错过了什么?

The doc https://www.saxonica.com/saxon-c/documentation/index.html#!starting/installingpython指出:

Linux 和 MacOS 平台上的 Python 扩展可以使用以下命令构建:python3 saxon-setup.py build_ext -if

好吧,我使用的是 Windows 机器,那又怎样呢?我试图阅读这个主题,但接收和“.h”文件似乎超出了我的理解范围。

我真的很想让它在 Python 上工作,但现在,我在 Python 中陷入了 xslt 和 xpath 1.0 的困境,并且不得不通过 Java 来争取 xslt 2+。

任何帮助,将不胜感激!

我将在 StackOverflow 上写另一个问题,但重点是当我安装了 64 位版本的 Anaconda 时如何使用 Cython 进行构建。这似乎是我最初的问题。


我已成功在几台 Windows 10 计算机上构建了适用于 Python 的 saxonc,其中我已经安装了具有 Python 3 支持和 C/C++ 支持的 Visual Studio 2017 或 2019。

对于当前版本的 SaxonC HE,步骤大致如下:

  • 从 Saxonica 安装 SaxonC HE 11.3
  • 对于 Python:更新 pip
  • 使用 pip 安装 Cython:pip install Cython
  • 打开 Powershell 例如Python 3.9(如果安装在 C:\Program Files,则具有管理员权限)
  • cd Saxon 安装目录(例如cd C:\Program Files\Saxonica\SaxonC HE 11.3)
  • cd Saxon.C.API\python-saxon
  • run py saxon-setup.py build_ext -if
  • 对于任意Powershell Windows需要设置SAXONC_HOME到安装目录,例如$env:SAXONC_HOME='C:\Program Files\Saxonica\SaxonC HE 11.3' and PYTHONPATH: $Env:PYTHONPATH += ";C:\Program Files\Saxonica\SaxonC HE 11.3\Saxon.C.API\python-saxon"确保任何 Python 程序中的“import saxonc”都能找到 saxonc 模块

对于 Saxon-C HE 1.2.1,它们是:

  • 从 Saxonica 安装 Saxon-C HE 1.2.1
  • 对于 Python:更新 pip
  • 使用 pip 安装 Cython:pip install Cython
  • 打开 Powershell for Python 3.7(如果安装在 C:\Program Files,则具有管理员权限)
  • cd Saxon 安装目录(例如cd C:\Program Files\Saxonica\SaxonHEC1.2.1)
  • cd Saxon.C.API\python-saxon
  • run py saxon-setup.py build_ext -if
  • 对于任意 Powershell Windows 需要设置:$Env:PYTHONPATH += ";C:\Program Files\Saxonica\SaxonHEC1.2.1\Saxon.C.API\python-saxon"确保任何 Python 程序中的“import saxonc”都能找到 saxonc 模块
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使 saxon-c 在 Python 中可用 的相关文章

随机推荐