SesClassObject.py 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import traceback
  2. from boto3.session import Session
  3. # 发送邮件邮箱
  4. SES_COMPANY_EMAIL = 'user_server@nsst.com'
  5. AWS_SES_ACCESS_ID = 'AKIAJKPU23EU5QWHFPKQ'
  6. AWS_SES_ACCESS_SECRET = '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'
  7. AWS_SES_ACCESS_REGION = 'us-east-1'
  8. AWS_BUCKET = 'ansjertest'
  9. class SesClassObject:
  10. def __init__(self, *args, **kwargs):
  11. self.access_id = AWS_SES_ACCESS_ID
  12. self.access_secret = AWS_SES_ACCESS_SECRET
  13. self.region_name = AWS_SES_ACCESS_REGION
  14. self.company_email = SES_COMPANY_EMAIL
  15. session = Session(
  16. aws_access_key_id=AWS_SES_ACCESS_ID,
  17. aws_secret_access_key=AWS_SES_ACCESS_SECRET,
  18. region_name=AWS_SES_ACCESS_REGION,
  19. )
  20. self.conn = session.client('ses')
  21. def send_email(self, send_address_list=[], subject='', body=''):
  22. try:
  23. response = self.conn.send_email(
  24. # 发送人
  25. Source=self.company_email,
  26. Destination={
  27. # 收件人
  28. 'ToAddresses': send_address_list
  29. # 'ToAddresses': [
  30. # '1758730877@qq.com',
  31. # ],
  32. },
  33. Message={
  34. # 标题
  35. 'Subject': {
  36. 'Data': subject,
  37. 'Charset': 'utf-8'
  38. },
  39. 'Body': {
  40. 'Html': {
  41. 'Data': body,
  42. 'Charset': 'utf-8'
  43. }
  44. }
  45. },
  46. )
  47. except Exception as e:
  48. errorInfo = traceback.format_exc()
  49. print(errorInfo)
  50. self.send_email(send_address_list=[self.company_email], subject='邮件发送错误信息提醒', body='<br>请向开发人员反馈并修改</br>' +'\n错误信息位'+str(errorInfo))
  51. else:
  52. if response['MessageId']:
  53. return True
  54. else:
  55. print(response)
  56. self.send_email(send_address_list=[self.company_email], subject='邮件发送错误信息提醒',
  57. body='<br>请向开发人员反馈并修改</br>')
  58. return False
  59. #
  60. # sesObj = SesClassObject()
  61. # sesObj.send_email(send_address_list=['1758730877@qq.com'],subject='hi test',body='hello')