Создать файл, который будет автоматически отправлять электронную почту при нажатии? - PullRequest
0 голосов
/ 09 февраля 2019

Моя программа берет введенные данные и создает несколько командных / docx файлов.Есть ли способ взять мои введенные данные и создать файл, который при нажатии автоматически отправит электронное письмо на указанный адрес электронной почты из определенной учетной записи Gmail?или, что еще лучше, откройте Chrome и подготовьте электронное письмо для отправки текста и все?

Учетная запись Gmail, которую я хотел бы использовать, делегирована (контролируется различными пользователями), и электронная почта должна приходить с этой учетной записи, а не с моей личной учетной записи Gmail, в которую я вошел какЧто ж.

edit: не нужно открывать Chrome.может быть что угодно.пока я могу внести изменения, прежде чем я нажму отправить.

1 Ответ

0 голосов
/ 09 февраля 2019

Создайте пакетный файл, который будет запускать созданный вами файл Python. Например, пакетный файл со следующей строкой

python -m your_module.your_python_file

создайте файл Python с именем your_python_file.py со следующим кодом

import logging
from logging.handlers import SMTPHandler

if(__name__ == "__main__"):
    logger = logging.getLogger()

    server_email_address = 'your_gmail_address'
    server_account_password = 'your_gmail_password'
    destination_email_address = 'destination_email_address'

    emailh = SMTPHandler(('smtp.gmail.com', 587)
                     ,server_email_address
                     ,destination_email_address
                     ,'your subject'
                     ,(server_email_address, server_account_password)
                     , secure=())

    emailh.setLevel(logging.WARNING)
    logger.addHandler(emailh)

    # input the email message to send
    msg = input('enter message \n')

     # send the email
    logger.warning(msg)

когда вы нажимаете на командный файл, он должен открыть окно консоли и запустить код Python.Он должен запросить у вас ввод - сообщение электронной почты для отправки - тогда он отправит письмо

...