前段时间用python代码通过UNO访问LibreOffice,用的是LibreOffice自带的python解释器。
今天尝试下用外部python解释器(非LibreOffice自带的Python解释器)调用UNO的方法。
环境信息:
我的LibreOffice自带的python解释器为D:\Program Files (x86)\LibreOffice\program\python.exe。
我的外部python解释器为D:\Program Files (x86)\Python38\python.exe
代码举例:
- 没有修改导包路径以前的代码及执行结果:
import sys
print(sys.executable)
#sys.path.append("D:\\Program Files (x86)\\LibreOffice\\program")
import uno
PropertyValue = uno.getClass('com.sun.star.beans.PropertyValue')
print(PropertyValue)
执行结果出错:
- 修改导包路径后的代码及执行结果:
import sys
print(sys.executable)
sys.path.append("D:\\Program Files (x86)\\LibreOffice\\program")
import uno
PropertyValue = uno.getClass('com.sun.star.beans.PropertyValue')
print(PropertyValue)
执行结果为:
由此可见,通过修改导包路径,是可以用外部python解释器的。