定时脚本

30 18 * * * /usr/bin/python3.6 /home/work/脚本.py > /home/work/log.log 2>&1

代码:

# encoding:utf-8
import json
import requests
import datetime

# 群组中的人员列表
group_members = ['人员1|1234567','人员2|2345678','人员3|3456789']  # 以列表形式提供群组中的人员名单

def get_notification_index(date,total_members):
  ordinal_day = date.toordinal()  # 获取日期的自 0001-01-01 开始的天数
  return ordinal_day%total_members

try:
  # 获取当前日期
  date1 = datetime.datetime.now().date()
  date2 = date1 + datetime.timedelta(days=1)

  total_members = len(group_members)
  notification_index_2 = get_notification_index(date2,total_members)
  notification_person_2 = group_members[notification_index_2].split("|")[0]
  notification_phone_2 = group_members[notification_index_2].split("|")[1]

except ValueError as e:
  print("日期转换失败:", e)

notes="请注意手机不要静音,辛苦了!"

def send():
    #url = "飞书地址"
    headers = {
        'Content-Type': 'application/json'
    }
    card ={
          "header": {
            "template": "purple",
            "title": {
              "content": f"明日 {notification_person_2} 值班",
              "tag": "plain_text"
            }
          },
          "elements": [
            {
              "tag": "column_set",
              "flex_mode": "none",
              "background_style": "default",
              "columns": [
                {
                  "tag": "column",
                  "width": "weighted",
                  "weight": 1,
                  "vertical_align": "top",
                  "elements": [
                    {
                      "content": f"值 班 员:{notification_person_2}",
                      "tag": "markdown"
                    }
                  ]
                }
              ]
            },
            {
              "tag": "column_set",
              "flex_mode": "none",
              "background_style": "default",
              "columns": [
                {
                  "tag": "column",
                  "width": "weighted",
                  "weight": 1,
                  "vertical_align": "top",
                  "elements": [
                    {
                      "content": f"值班电话: {notification_phone_2}",
                      "tag": "markdown"
                    }
                  ]
                }
              ]
            },
            {
              "tag": "column_set",
              "flex_mode": "none",
              "background_style": "default",
              "columns": [
                {
                  "tag": "column",
                  "width": "weighted",
                  "weight": 1,
                  "vertical_align": "top",
                  "elements": [
                    {
                      "content": f"值班时间: {date1} 21:30 ~ {date2} 09:30",
                      "tag": "markdown"
                    }
                  ]
                }
              ]
            },
            {
              "tag": "column_set",
              "flex_mode": "none",
              "background_style": "default",
              "columns": [
                {
                  "tag": "column",
                  "width": "weighted",
                  "weight": 1,
                  "vertical_align": "top",
                  "elements": [
                    {
                      "tag": "markdown",
                      "content": f"备    注:{notes}"
                    }
                  ]
                }
              ]
            }
          ]
    }
    body = json.dumps({"msg_type":"interactive","card":card})
    response = requests.post(url=url,data=body,headers=headers)
    print(response.headers['X-Tt-Logid']) # for debug or oncall
    print(response.content) # Print Response
if __name__ == '__main__':
  send()
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐