如何在ANSA中通过Python脚本打开PDF文件(Linux环境)
如何在ANSA中通过Python脚本打开PDF文件(Linux环境)
我完全懂你现在的困扰——在ANSA脚本编辑器里跑这段Python代码,没报错但PDF就是纹丝不动,这事儿我之前也帮人排查过,核心问题其实就藏在你注释掉的那几行代码里!
ANSA启动的时候会修改系统的LD_LIBRARY_PATH环境变量,用来加载它自身依赖的库文件,但这个操作会干扰xdg-open调用系统默认PDF阅读器的流程,这就是为啥你调用了命令却没反应的原因。
你只需要把那部分注释的逻辑恢复,在调用xdg-open前清理掉这个被ANSA修改过的环境变量,就能让命令正常工作了。修改后的完整代码如下:
import os import subprocess import platform file_path = "RUNME.pdf" if platform.system() == "Windows": os.startfile(file_path) elif platform.system() == "Darwin": subprocess.Popen(['open', file_path]) else: my_env = os.environ.copy() if 'LD_LIBRARY_PATH' in my_env: del my_env['LD_LIBRARY_PATH'] subprocess.Popen(['xdg-open', file_path], env=my_env)
另外还有两个小细节要注意:
- 先确认
RUNME.pdf的路径是否正确,如果用的是相对路径,得对应ANSA当前的工作目录,你可以加一行print(os.path.abspath(file_path))来打印绝对路径验证 - 先在系统终端里手动跑一遍
xdg-open RUNME.pdf,确认系统本身能正常打开这个PDF,排除阅读器配置的问题
备注:内容来源于stack exchange,提问作者Carlos Cuartas




