У меня довольно странная проблема.Я пытаюсь запустить скрипт .js внутри скрипта Python.В моем скрипте .js я конвертирую .pdf в json и затем вызываю этот скрипт .js внутри скрипта .py, который конвертирует этот json в .xlsx.
Но используя Popen для выполнения скрипта .js, появляется ошибка: "[WinError 2] Системе не удается найти указанный файл ".Я перепроверил местоположение ошибки почти 10 раз.Я проверил cwd тоже его правильно.Все на месте, кроме этой ошибки.Пожалуйста, помогите мне.: (
import pandas as pd
from subprocess import Popen, PIPE
import os
cwd = os.getcwd()
bankType = "parsePmc"
parser_path = os.path.join(cwd, "parse_pmc_bank_pdf.js")
input_file_path = os.path.join(cwd, "bs.pdf")
output_file_path = os.path.join(cwd, "bs_excel.xlsx")
print(parser_path)
print(input_file_path)
print(output_file_path)
#parser_path = parser_path.replace("\\","\\\\") #(Even this doesn't work.)
print(parser_path)
args = ["node", parser_path, input_file_path, output_file_path] #I've even checked it using with str() for the paths.
print(os.getcwd())
p = Popen(args, stdout=PIPE, stderr=PIPE)
stdout, stderr = p.communicate()
print(stdout)
if bool(stderr):
print(stderr)
else:
df = pd.read_json(output_file_path)
if df.empty:
print("EMPTY XLSX")
else:
df.to_excel(output_file_path, sheet_name='Raw')
[Error:] ---------------------------------------------------------------------------
FileNotFoundError Traceback (most recent call last)
<ipython-input-40-e3dffdd7e5db> in <module>()
1 args = ["node", str(parser_path)]
2 print(os.getcwd())
----> 3 p = Popen(args, stdout=PIPE, stderr=PIPE)
4 stdout, stderr = p.communicate()
5 print(stdout)
C:\ProgramData\Anaconda3\lib\subprocess.py in __init__(self, args, bufsize, executable, stdin, stdout, stderr, preexec_fn, close_fds, shell, cwd, env, universal_newlines, startupinfo, creationflags, restore_signals, start_new_session, pass_fds, encoding, errors)
705 c2pread, c2pwrite,
706 errread, errwrite,
--> 707 restore_signals, start_new_session)
708 except:
709 # Cleanup if the child failed starting.
C:\ProgramData\Anaconda3\lib\subprocess.py in _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, unused_restore_signals, unused_start_new_session)
988 env,
989 cwd,
--> 990 startupinfo)
991 finally:
992 # Child is launched. Close the parent's copy of those
pipe
FileNotFoundError: [WinError 2] The system cannot find the file specified