在Windows上使用pywin32 / excel移植Python到Vagrant机器上的Linux
我写了一个广泛的python包,利用excel和pywin32。 我现在正在将这个软件包移动到一个Vagrant机器上的Linux环境中。
我知道有一些“emulator-esque”软件包(例如WINE)可以运行Windows应用程序,并且对于某些Windows应用程序(例如Excel到OpenOffice)来说,它们看起来很像。 然而,我并没有看到正确的道路,为了让我的pywin32 / Excel的依赖代码在Vagrant机器上运行在Linux环境下运行。 理想情况下,我不需要改变我的代码,只需在我的Vagrant机器上进行适当的安装即可。
谢谢
简短的回答是,你不能。 WINE不会将瓶装的Windows环境的COMregistry暴露给linux,即使这样做, pywin32
也不会构build在Windows以外的其他任何环境中。
所以,这里有一些选项,大概从最less量的改变到你的代码并设置到最多:
- 在真实的Windows下运行您的Python脚本和Excel,在真实的模拟器中运行。
- 在WINE下运行你的Python脚本和Excel。
- 编写或查找一个库,将瓶装的Windows环境的COMregistry暴露给Linux。
- 写或find一个跨平台的DCOM库,提供类似
win32com
的API,然后更改代码以使用它来远程连接到装瓶的Excel。 - 重写你的代码来间接地脚本化Excel,例如,
ssh
进入一个Windows机器并运行最小的WSH脚本。 - 重写您的代码脚本
LibreOffice
或任何你喜欢,而不是Excel。 - 重写代码以直接处理Excel文件(或CSV或其他交换格式)而不是脚本化Excel。