[解決済み] CrontabでpythonのsubPrrocess経由で使用するmailxを呼び出せない。
2022-02-24 20:05:44
質問
Pythonのファイル(mail_it.py)にメールを送信する関数を書いています。 コードは以下の通りです。
def send_mail(recipient, subject, file_to_mail, body):
try:
process = subprocess.Popen(['mailx', '-s', subject,'-a',file_to_mail, recipient], stdin=subprocess.PIPE)
except Exception as error:
print(error)
process.communicate(body)
send_mail('[email protected]', 'subject', 'file_name', 'body')
このPythonファイルをunixコマンドで直接実行した場合。
python3 mail_it.py
メールが送信されます。しかし、このファイルをcrontabで実行するように設定すると。以下のようなエラーが発生します。
[Errno 2] No such file or directory: 'mailx': 'mailx'
ありがとうございました。
どのように解決するのですか?
これは、あなたのプロセス環境、より具体的には$PATHの問題です。
シェルから実行する場合は、$PATHにあります。
mailx プログラムがどこにあるか調べるには
which mailx
という絶対パスでコードを編集してみてください(これは単なる例であり、あなたのシステムは異なるでしょう)。
process = subprocess.Popen(['/usr/local/mailx', .......................
mailxが必要とする他の環境設定とunixのパーミッションによっては、crontabの設定を変更しなければならないかもしれません。
また、クーロンタブがどのユーザーとしてプロセスを実行しているかに注意してください。それはあなたが期待するものですか?
関連
-
[解決済み] Process finished with exit code 1」とはどういう意味ですか?
-
[解決済み] 2次元リストを行と列で印刷する
-
[解決済み] python3 UnicodeEncodeError: 'charmap' コーデックは位置 95-98 の文字をエンコードできない: 文字は <undefined> にマップされる。
-
[解決済み] CrontabでpythonのsubPrrocess経由で使用するmailxを呼び出せない。
-
[解決済み] python3のdateutil.parserの代わりとなるものは何ですか?
-
[解決済み] Python SSL証明書検証エラー
-
[解決済み] シンタックスエラーと変数アノテーションのターゲットが不正であるというエラーが発生します。どうすれば直せますか?[クローズド]
-
[解決済み] Jupyterノートブックで別ディレクトリのpyファイルをインポートする
-
[解決済み] Python の open() はファイルが存在しない場合、ファイルを作成しない
-
[解決済み】Python - n+nn+nnn+nnnの値を与えられた桁をnの値として計算する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】 raise TypeError(repr(o) + " is not JSON serializable")
-
[解決済み] PyCharmでインタプリタを設定する。"別のSDK名を使用してください"
-
[解決済み] 2次元リストを行と列で印刷する
-
[解決済み] python3 UnicodeEncodeError: 'charmap' コーデックは位置 95-98 の文字をエンコードできない: 文字は <undefined> にマップされる。
-
[解決済み] xml.parsers.expat.ExpatError: 整形式でない(無効なトークン)。
-
[解決済み] python3のdateutil.parserの代わりとなるものは何ですか?
-
[解決済み] Python SSL証明書検証エラー
-
[解決済み] ~/.conda/envs. ~/anaconda3/envs.
-
[解決済み] モジュール 'pandas' には 'scatter_matrix' という属性がない」 というエラーはどうすれば解決できますか?
-
[解決済み】Python - n+nn+nnn+nnnの値を与えられた桁をnの値として計算する方法