Python3 subprocess.PopenでFileNotFoundError: [WinError 2] 指定されたファイルが見つかりません。

 

PythonWindowsのアプリ起動を自動化できるか試しています。

 

Windowsの場合はスタートアップに入れておけばいいという話もありますが、端末意外にも定期的に処理させたいアプリが動かせないか調べています。

 

まずはPythonスクリプトで起動ができるかの確認で、試しにメモ帳を起動するように試したところ、、、

 

subprocess.Popenで「FileNotFoundError: [WinError 2] 指定されたファイルが見つかりません。」エラーが出力されました。

 

 

以下のようなエラーです。

 

>>> subprocess.Popen('C:\Windows\notepad.exe')
<python-input-34>:1: SyntaxWarning: invalid escape sequence '\W'
  subprocess.Popen('C:\Windows\notepad.exe')
<unknown>:2: SyntaxWarning: invalid escape sequence '\W'
<unknown>:1: SyntaxWarning: invalid escape sequence '\W'
Traceback (most recent call last):
  File "<python-input-34>", line 1, in <module>
    subprocess.Popen('C:\Windows\notepad.exe')
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.13_3.13.752.0_x64__qbz5n2kfra8p0\Lib\subprocess.py", line 1038, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                        pass_fds, cwd, env,
                        ^^^^^^^^^^^^^^^^^^^
    ...<5 lines>...
                        gid, gids, uid, umask,
                        ^^^^^^^^^^^^^^^^^^^^^^
                        start_new_session, process_group)
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.13_3.13.752.0_x64__qbz5n2kfra8p0\Lib\subprocess.py", line 1550, in _execute_child
    hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
                       ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
                             # no special security
                             ^^^^^^^^^^^^^^^^^^^^^
    ...<4 lines>...
                             cwd,
                             ^^^^
                             startupinfo)
                             ^^^^^^^^^^^^
FileNotFoundError: [WinError 2] 指定されたファイルが見つかりません。

 

調べたところ、Windows特有の影響のようです。

 

 

ファイルパスの「¥」を2回記述する必要があります。「¥」

 

上は全確認していますが、以下で起動できました。

 

subprocess.Popen('C:\\Windows\\notepad.exe')

 

起動できただけだと何にもならないので、ここからは実際に使いたいソフトでの細かい処理の自動化を考えていこうと思います。

 

エレコム マウス ワイヤレス Mサイズ 5ボタン(戻る・進むボタン搭載) BlueLED 握りの極み ガンメタリック M-XGM10DBBK/EC