0

私はコンソールログ内の特定のテキストを探して、一致する行をすべて印刷しているPythonを使ってテキスト処理を行っています。これは、呼び出された関数によって達成される:現在の実行までのPython出力を収集し、電子メールを送信する変数に代入する

get_matched_log_lines(url, search_pattern, print_pattern)どこurl =私は私のログを取得し、そこから、search_pattern =私の目標の検索パターン、print_pattern =私は私の出力(その、%s.%s

どのように印刷する方法私はこの機能の全出力を電子メールで送るのですか?get_matched_log_lines()?ファンクションコードの電子メールは、すでにPythonで書かれています。これは私に空メールを提供

email_content = get_matched_log_lines(url, search_pattern, print_pattern) 
TO = 'recipient email address' 
FROM ='sender email address' 

#emailing function - py_mail 
py_mail("Test email subject", email_content, TO, FROM) 

:ここ

は、私がこれまで試みた/何を考えています。

def get_matched_log_lines(url, search_pattern, print_pattern): 
     out = open("output_file.txt", "w") 
     for something in somthings: 
       test = print_pattern % matched_line 
       print >>out, test 
      out.close() 

^^ただ、一般的な例(多分正しくない構文):

+0

に電子メールを送信すると、あなたの質問はありますか? – PyNEwbie

+0

私は質問したところで私の質問を編集しました...どのようにしてこの関数get_matched_log_lines()の出力全体をメールで送るのですか?私は今、それがより明確になることを望む。 –

+0

[Pythonで電子メールを送信するにはどうすればいいですか?](0120-18753-21) – PyNEwbie

答えて

0

はここPyNEwbieによって提案に基づいて私の答えです。考え方はfile in write modeを開いてから出力をダンプすることです。

fp = open("output_file.txt", 'r') 
    # Create a text/plain message 
    msg = fp.read() 
    fp.close() 
    email_content = msg 

そして、(私の場合email_contentに)

を同じfile in read modeを開いて、いくつかのVARにその出力を保存最後にそのemail_content

email_content = get_matched_log_lines(url, search_pattern, print_pattern) 
    TO = 'recipient email address' 
    FROM ='sender email address' 

#emailing function - py_mail 
py_mail("Test email subject", email_content, TO, FROM) 
関連する問題