使用pyUno开发Windows下的OpenOffice.org——使用哪个版本的Python?

7

在家里,我使用Python 2.6尝试了pyUNO来控制OpenOffice.org。一切看起来都很顺利。

现在我想在Windows上尝试运行我的一个脚本(运行ODF文档的图形化差异),但是当我尝试运行它时,出现了以下错误:

ImportError: No module named uno

根据udk: Python UNO BridgeOpenOffice.org Running Python on Windows,我需要运行与OpenOffice.org一起安装的Python解释器。
Q1:OpenOffice.org可用Python 2.6吗?
然而,该解释器是Python 2.3版本,有些过时了!我的脚本使用了2.3不支持的功能(subprocess模块)。
Q2:在Windows上可以使用标准Python发行版的pyUNO附加组件进行pyUNO编程,而不是OpenOffice.org捆绑的Python吗?
到目前为止,我还没有找到任何迹象表明有pyUNO模块可安装到标准Python Windows发行版中……这很令人惊讶,因为在Ubuntu Linux中,UNO在Python中得到了良好的支持,只需:
 apt-get install python-uno

另一个问题是:如果我想编写一个同时使用pyUNO和其他第三方库的程序,该怎么办?我无法在Windows上将pyUNO安装到Python中,所以我是否必须将其他第三方库安装到OpenOffice.org捆绑的Python中?这使得创建更大、更全面的程序变得困难。

我是否遗漏了什么,或者我们现在被困在这种情况中?

3个回答

5
根据 openoffice 文档,支持的 Python 版本已经远远落后了 -- "将 PyUNO 移植到 Python 2.5 的工作正在进行中",甚至没有考虑 2.6 版本。因此,“暂时被困在这种情况下”是一个合理的评估!-)

4

OpenOffice.org 3.1自带Python 2.6.1。(据我所知,这是一个相当临时的合并,让一些人感到不爽,但它确实存在并且可以使用。)现在,文档是唯一无望过时的东西。 :)


3
您可以在Win32系统上将uno导入到您的系统Python中(尚未支持Python 3)。教程位于http://user.services.openoffice.org/en/forum/viewtopic.php?f=45&t=36370&p=166783。操作并不复杂 - 导入三个环境变量,然后将一个项目添加到您的pythonpath中。
为了增加灵活性,您可以使用COM-UNO桥代替Python-UNO桥。语法通常非常相似,而且您可以使用任何版本的Python(包括Python3)。有关信息请参见http://user.services.openoffice.org/en/forum/viewtopic.php?f=45&t=36608&p=167909

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接