在 Python 中提供 saxon-c
Making saxon-c available in Python
我刚刚读到 Saxon 现在可用于 Python,这非常有趣而且很好,但是任何人都可以编写有关如何使其可用于 Python/Anaconda/WingIDE 或类似内容的教程吗?我习惯用pip或者conda安装,指向一个package/wheel集成到我的环境中,但是我从来没有从头开始过,感觉我在这里做的,还是我遗漏了什么?
doc 指出:
The Python extension on the Linux and MacOS platforms can be built using the following command:python3 saxon-setup.py build_ext -if
好吧,我在 windows 机器上那又怎样?我已尝试阅读有关此主题的内容,但 recepies 和“.h”文件似乎超出了我的理解范围。
我只是真的想让它在 Python 上运行,但现在,我在 Python 中受困于 xslt 和 xpath 1.0,并且不得不努力通过 Java 对于 xslt 2+。
如有任何帮助,我们将不胜感激!
我将在 Whosebug 上写另一个问题,但重点是当我安装了 64 位版本的 Anaconda 时如何使用 Cython 进行构建。这似乎是我最初的问题。
我已经在几台 Windows 10 台机器上为 Python 构建了 saxonc,我已经在这些机器上安装了 Visual Studio 2017 或 2019 Python 3 支持和C/C++支持。
大致的步骤,针对当前版本的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
- 运行
py saxon-setup.py build_ext -if
- 对于任意 Powershell Windows 需要将
SAXONC_HOME
设置为安装目录,例如$env:SAXONC_HOME='C:\Program Files\Saxonica\SaxonC HE 11.3'
和 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
- 打开 Python 3.7 的 Powershell(如果安装在 C:\Program Files 中,则具有管理员权限)
- cd Saxon 安装目录(例如
cd C:\Program Files\Saxonica\SaxonHEC1.2.1
)
cd Saxon.C.API\python-saxon
- 运行
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 模块
我刚刚读到 Saxon 现在可用于 Python,这非常有趣而且很好,但是任何人都可以编写有关如何使其可用于 Python/Anaconda/WingIDE 或类似内容的教程吗?我习惯用pip或者conda安装,指向一个package/wheel集成到我的环境中,但是我从来没有从头开始过,感觉我在这里做的,还是我遗漏了什么?
doc 指出:
The Python extension on the Linux and MacOS platforms can be built using the following command:
python3 saxon-setup.py build_ext -if
好吧,我在 windows 机器上那又怎样?我已尝试阅读有关此主题的内容,但 recepies 和“.h”文件似乎超出了我的理解范围。
我只是真的想让它在 Python 上运行,但现在,我在 Python 中受困于 xslt 和 xpath 1.0,并且不得不努力通过 Java 对于 xslt 2+。
如有任何帮助,我们将不胜感激!
我将在 Whosebug 上写另一个问题,但重点是当我安装了 64 位版本的 Anaconda 时如何使用 Cython 进行构建。这似乎是我最初的问题。
我已经在几台 Windows 10 台机器上为 Python 构建了 saxonc,我已经在这些机器上安装了 Visual Studio 2017 或 2019 Python 3 支持和C/C++支持。
大致的步骤,针对当前版本的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
- 运行
py saxon-setup.py build_ext -if
- 对于任意 Powershell Windows 需要将
SAXONC_HOME
设置为安装目录,例如$env:SAXONC_HOME='C:\Program Files\Saxonica\SaxonC HE 11.3'
和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
- 打开 Python 3.7 的 Powershell(如果安装在 C:\Program Files 中,则具有管理员权限)
- cd Saxon 安装目录(例如
cd C:\Program Files\Saxonica\SaxonHEC1.2.1
) cd Saxon.C.API\python-saxon
- 运行
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 模块