Вот пример Python, который является кроссплатформенным (если у вас нет node
в PATH
) и использует только стандартную библиотеку:
# client.py
import subprocess
import webbrowser
if __name__ == '__main__':
try:
server_proc = subprocess.Popen(['node', 'webServer.js'])
webbrowser.open('http://localhost:8080')
server_proc.communicate()
except KeyboardInterrupt:
server_proc.terminate()
Обратите внимание, однако, что webbrowser.open
откроет браузер, установленный по умолчанию, таким образом, это может быть Safari или что-то еще. Если вы хотите специально открыть Chrome, вам нужно будет передать полный путь к исполняемому файлу (или изменить PATH
env var). Пример:
# client.py
import os
import subprocess
if __name__ == '__main__':
try:
server_proc = subprocess.Popen(['node', 'webServer.js'])
chrome_exe = os.path.join('/', 'Applications', 'Google Chrome.app', 'Contents', 'MacOS', 'Google Chrome')
subprocess.Popen([chrome_exe, 'http://localhost:8080'])
server_proc.communicate()
except KeyboardInterrupt:
server_proc.terminate()