#!/usr/bin/env python3 # -*- coding: utf-8 -*- import re import gmail import yagmail from hackerutils import get_dotenv dotenv = get_dotenv() GMAIL_USERNAME = dotenv['GMAIL_USERNAME'] GMAIL_PASSWORD = dotenv['GMAIL_PASSWORD'] KUMAR_EMAIL = 'kumar.a@example.com' KEYWORDS_REGEX = re.compile(r'sorry|help|wrong', re.IGNORECASE) REPLY_BODY = "No problem. I've fixed it. \n\nPlease be careful next time." yagmail.register(GMAIL_USERNAME, GMAIL_PASSWORD) def send_reply(subject): yag = yagmail.SMTP(GMAIL_USERNAME) yag.send( to=KUMAR_EMAIL, subject='RE: {}'.format(subject), contents=REPLY_BODY, ) def main(): g = gmail.login(GMAIL_USERNAME, GMAIL_PASSWORD) for mail in g.inbox().mail(unread=True, sender=KUMAR_EMAIL, prefetch=True): if KEYWORDS_REGEX.search(mail.body): # Restore DB and send a reply. mail.add_label('Database fixes') send_reply(mail.subject) if __name__ == '__main__': main()