python新手:在Windows上使用ApacheOpenOffice4的pyodconverter

python新手:在Windows上使用ApacheOpenOffice4的pyodconverter,python,windows,openoffice.org,Python,Windows,Openoffice.org,我对Python一无所知,我需要在windows(XP和7)上使用pyodconverter转换文档。我使用这里给出的简单示例: 它的工作原理与openoffice 3的soffice.exe路径类似,但在openoffice 4中,我收到以下消息: ImportError: No module named uno 从os.path导入abspath、isfile、com.sun.star.beans导入PropertyValue的splitext中导入的每个其他模块都是如此 从com.sun

我对Python一无所知,我需要在windows(XP和7)上使用pyodconverter转换文档。我使用这里给出的简单示例:

它的工作原理与openoffice 3的soffice.exe路径类似,但在openoffice 4中,我收到以下消息:

ImportError: No module named uno
从os.path导入abspath、isfile、com.sun.star.beans导入PropertyValue的splitext中导入的每个其他模块都是如此 从com.sun.star.task导入ErrorCodeIOException 从com.sun.star.connection导入无连接异常)

但是,如果我在与python.exe相同的目录中复制并执行DocumentConverter.py,它就会工作。所以这一定只是一个路径问题

  • 我无法从此目录调用DocumentConverter.py,必须从另一目录调用它
  • 但我可以修改DocumentConverter.py或在同一目录中添加其他文件

我看到OpenOffice 3和4之间的目录结构发生了变化,但不知道为什么它与3而不是4一起工作。有什么想法吗?

在OpenOffice 4中使用DocumentConverter.py时,必须修改搜索路径

OpenOffice 4中的python.exe似乎使用相对搜索路径而不是绝对搜索路径,这就是为什么在安装OpenOffice 4的目录之外的另一个目录中执行DocumentConverter.py时出错的原因

我可以通过在DocumentConverter.py中的“import uno”命令之前添加以下代码行来解决此问题:

import sys
sys.path.append("C:\Program Files (x86)\OpenOffice 4\program")
import sys
sys.path.append("C:\Program Files (x86)\OpenOffice 4\program")