我正在尝试创建一个python脚本来自动为我更新程序。当我运行program.exe --help时,它给出的输出很长,并且输出中是值为"Version: X.X.X"
的字符串。如何制作运行该命令并从可执行文件的输出中隔离版本号的脚本?
我应该提到我尝试了以下操作:
import re
import subprocess
regex = r'Version: ([\d\.]+)'
match = re.search(regex, subprocess.run(["program.exe", "--help"]))
print((match.group(0)))
并收到错误:
Traceback (most recent call last):
File "run.py", line 6, in <module>
match = re.search(regex, subprocess.run(["program.exe", "--help"]))
File "C:\Python37\lib\re.py", line 183, in search
return _compile(pattern, flags).search(string)
TypeError: expected string or bytes-like object
答案 0 :(得分:0)
类似的事情应该起作用:
re.search(r'Version: ([\d\.]+)', subprocess.check_output(['program.exe', '--help']).decode()).group(1)