私は非常に単純な python スクリプト (電子メールを送信するため) を持っています。これは、cmd ウィンドウまたは python で実行した場合、またはそれを指す .bat ファイルを直接開始した場合に完全に機能します。
しかし、タスク スケジューラで実行しようとしても、何も起こりません。タスク スケジューラは、実行して正常に完了したことを示し、ログ ファイルは空白ですが、電子メールは送信されません。
この問題に関連して他にも多くの質問があることを認識しており、それらを読み、解決策を試しましたが、何もうまくいかないようです. 私はPython(およびタスクのスケジュール設定)が初めてなので、ソリューションを正しく実装していない可能性があります。
これが私が試したことです...
さまざまな方法でスクリプトを含むバッチ ファイルを作成します。
python C:\Users\me\Documents\etc\script.py >C:\Users\me\Documents\etc\log.txt python "C:\Users\me\Documents\etc\script.py >C:\Users\me\Documents\etc\log.txt" C:\Users\me\AppData\Local\Programs\Python\Python35-32\python.exe C:\Users\me\Documents\etc\script.py "C:\Users\me\AppData\Local\Programs\Python\Python35-32\python.exe" "C:\Users\me\Documents\etc\script.py" C:\Users\me\Documents\etc\script.py
ファイルをダブルクリックすると、これらはすべて正常に機能しますが、タスクマネージャーでは実行されません。(彼らは正常に完了したと言いますが)。タスク マネージャーで、.bat ファイルへのリンクを [プログラム/スクリプト] ボックスに入力しました。
上記を実行しますが、プログラム/スクリプト内の cmd.exe へのフル パスと、.bat ファイルを引数として使用します。また、batファイルの場所を「開始(オプション):」に入れてみました。
タスクスケジューラを介して.pyファイルを直接実行しようとし、「プログラム/スクリプト:」ボックスに入れます
タスク スケジューラを介して .py ファイルを直接実行しようとし、python.exe (上記参照) へのフル パスを「プログラム/スクリプト」に、sript.py を「引数の追加」に配置します。「開始」のスクリプトの場所へのパスでもこれを試しました。
cmd を使用して .py ファイルを実行しようとしています。そのため、cmd.exe へのフル パスを「Program/script」に、script.py ファイル (フル パス) を「Arguments」に入力します。
script.py を直接実行しようとしているもののいくつかは、タスク スケジューラで「実行中」と永遠に言うだけですが、どれがどれであるかを書き留めていませんでした。
私は Windows 7 (64 ビット) を実行しており、Python 3.5.1 (32 ビット) を持っています。私はローカル管理者権限を持っています。
私が作成した他のスケジュールされたタスク (python スクリプトを含まない) は正常に動作しますが、これは私を困惑させました。助けてください!