如何使用 Python 3.9 运行 网络 "protocol"(特别是 steam://)?

How to run a web "protocol" (specifically steam://) with Python 3.9?

我正在考虑使用 Python 创建一个应用程序“管理器”。这个应用程序只会整理我的应用程序和游戏。 我正在考虑 远程 打开 Steam 游戏。由于Steam使用的是steam://rungameid/(例如军团要塞2是440),所以我想到了用这个代码打开游戏:

import webbrowser
chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
webbrowser.get(chrome_path).open("steam://rungameid/440")

而且它不起作用,也不报错。它仅显示“谁在使用 Chrome?”门户网站,在您选择任何帐户后,没有任何反应。

您不应该强制使用特定的浏览器,您需要默认的协议处理程序:

import webbrowser  
webbrowser.open("steam://...")

在内部,这应该最终调用 os.startfile,后者应该在 Windows 上调用 ShellExecute,这正是您想要的。