celery (flask傳送郵件及其配置)

2021-09-26 21:25:30 字數 1522 閱讀 2728

比較簡單的celery配置

pip install celery

pip install flask_mail

新建celery_task python 包,名字自定義放在專案根目錄

-----celery_task

|-- __init__.py

|--tasks.py

from celery import celery

class contexttask(celery.task):

def __call__(self, *args, **kwargs):

return self.run(*args, **kwargs)

celery.task = contexttask

return celery

from flask_mail import message

from celery_task import make_celery

@celery.task

def send_mail(email=none, bug=none):

# print(email, bug)

msg = message(subject="xhx-oms bug提醒",

recipients=[email])

msg.body = bug

mail.send(msg)

# print('ok')

return 'success'

配置

跟目錄路徑

ext.py

config.py

# 配置worker

celery_broker_url = "redis:"

# 配置backend

celery_result_backend = "redis:"

# 郵件配置

mail_server = "smtp.163.com"

mail_username = "郵箱"

mail_password = "密碼"

mail_default_sender = "預設傳送人"

mail_use_ssl = true

# mail_use_tls = false

# mail_port = 465

# 埠號25一般被伺服器封掉,不能使用,採用587或者465

mail_port = 587

celery_timezone = "asia/shanghai"

celery_force = true

mail = mail()

# scheduler.start()

需要把專案檔案拷貝到服務上,進入虛擬環境,安裝好對應的包和redis

celery -a celery_task.tasks worker --loglevel=info
**端呼叫(引數由上面封裝的任務決定)

html傳送郵件 Python傳送郵件(三十)

簡單郵件傳輸協議 smtp 是一種協議,用於在郵件伺服器之間傳送電子郵件和路由電子郵件。python提供smtplib模組,該模組定義了乙個smtp客戶端會話物件,可用於使用smtp或esmtp偵聽器守護程式向任何網際網路機器傳送郵件。這是乙個簡單的語法,用來建立乙個smtp物件,稍後將演示如何用它...

C 傳送郵件

今天俺學習c 傳送郵件的方法 在命名空間system.web.mail 傳送電子郵件主要用到了二個物件 乙個是mailmessage物件,此物件主要是封裝電子郵件的各個屬性,即所謂的發信人,收信人,信件的主題,信件的內容和信件的附件等。另外乙個是 tpmail物件,這個物件的最大作用是把已經定義好各...

C 傳送郵件

今天作乙個小專案,其中有個提醒功能,需要簡訊和郵件。因此查詢了一下c 傳送郵件,原來在學習計算機網路時了解到,其實就是實現 tp協議和pop3協議,但是自己有沒有伺服器,於是利用126的郵箱製作。如下 mailmessage message new mailmessage message.from ...