Как я могу выполнить код JavaScript из Python?

Допустим, что у меня есть этот код внутри файла JavaScript:

var x = 10; x = 10 - 5; console.log(x); function greet() { console.log("Hello World!"); } greet() 

Как я могу использовать Python для выполнения этого кода и «печатать» x и Hello World! ?
Вот какой-то псевдо-код, который далее объясняет, что я думаю:

 # 1. open the script script = open("/path/to/js/files.js", "r") # 2. get the script content script_content = script.read() # 3. close the script file script.close() # 4. execute the script content and "print" "x" and "Hello World!" x = js.exec(script_content) 

И ожидаемый результат будет выглядеть так:

 >>> 5 >>> "Hello World!" 

Модуль Naked делает именно это. pip install Naked (или установить из источника, если хотите) и импортировать функции оболочки библиотеки следующим образом:

 from Naked.toolshed.shell import execute_js, muterun_js response = muterun_js('file.js') if response.exitcode == 0: print(response.stdout) else: sys.stderr.write(response.stderr) 

Для вашего конкретного случая, с file.js as

 var x = 10; x = 10 - 5; console.log(x); function greet() { console.log("Hello World!"); } greet() 

вывод будет '5\nHello World!\n' , который вы можете проанализировать по желанию.