7

在家里,在 Linux 上,我尝试使用 pyUNO 来使用 Python 控制 OpenOffice.org。我一直在使用 Python 2.6。这一切似乎运作良好。

现在我想我会在 Windows 上尝试我的一个脚本(为 ODF doc 运行图形差异)。但是当我尝试运行它时,我得到了:

ImportError: No module named uno

根据udk: Python UNO Bridge and OpenOffice.org Running Python on Windows,我必须运行随 OpenOffice.org 安装的 Python 解释器。

Q1:Python 2.6 是否可用于 OpenOffice.org?

但是,那个解释器是Python 2.3,它有点老了!并且我的脚本使用了 2.3(subprocess模块)不支持的功能。

Q2:Windows 上的 pyUNO 编程是否可以通过标准 Python 发行版的 pyUNO 插件而不是与 OpenOffice.org 捆绑的 Python 来完成?

到目前为止,在我的搜索中,我还没有找到任何迹象表明有一个 pyUNO 模块可以安装到标准 Python Windows 发行版中......这令人惊讶,因为在 Ubuntu Linux 上,UNO 支持得很好Python 只需:

 apt-get install python-uno

另一个问题是:如果我想制作一个同时使用 pyUNO 和其他 3rd 方库的程序怎么办?我无法将 pyUNO 安装到我在 Windows 上的 Python 安装中,所以我是否被迫以某种方式将我的其他 3rd 方库安装到 OpenOffice.org 的捆绑 Python 中?它使创建更大、功能更全的程序变得困难。

我错过了什么,还是我们现在陷入这种情况?

4

3 回答 3

5

根据openoffice 的文档,支持的 Python 版本落后了——“继续努力将 PyUNO 迁移到 Python 2.5”,2.6 甚至不在地图上。所以“暂时陷入这种情况”是一个公平的评估!-)

于 2009-06-15T03:50:11.773 回答
4

OpenOffice.org 3.1 附带 Python 2.6.1。(我记得,这是一个相当最后一分钟的合并,让一些人失望了,但它就在那里并且有效。)现在文档是唯一过时的东西。:)

于 2009-06-15T09:09:27.853 回答
3

您可以在 Win32 系统上将 uno 导入系统的 python。(还不是 Python 3)。教程在http://user.services.openoffice.org/en/forum/viewtopic.php?f=45&t=36370&p=166783 这并不难 - 导入三个环境变量,并将一项附加到您的 pythonpath。

For additional flexibility, you can use the COM-UNO bridge instead of the Python-UNO bridge. The syntax is generally quite similar, and you can use any version of Python (including Python3). Info at http://user.services.openoffice.org/en/forum/viewtopic.php?f=45&t=36608&p=167909

于 2010-12-09T00:14:14.743 回答