Win10下面利用Python自动定时发送钉钉消息

需求:

在windows10下面,创建一个定时任务,定时发送一条钉钉消息到钉钉群。

 

需求分解:

1、利用Python发送钉钉消息到钉钉群

2、Windows10 下面创建定时任务

 

实现:

1、利用Python发送钉钉消息到钉钉群

import datetime
import json
import urllib.request

def send_request(url, datas):
    #传入url和内容发送请求
    # 构建一下请求头部
    header = {
        "Content-Type": "application/json",
        "Charset": "UTF-8"
    }
    sendData = json.dumps(datas)  # 将字典类型数据转化为json格式
    sendDatas = sendData.encode("utf-8")  # python3的Request要求data为byte类型
    # 发送请求
    request = urllib.request.Request(url=url, data=sendDatas, headers=header)
    # 将请求发回的数据构建成为文件格式
    opener = urllib.request.urlopen(request)
    # 7、打印返回的结果
    print(opener.read())

def main():
    #按照钉钉给的数据格式设计请求内容  链接https://open-doc.dingtalk.com/docs/doc.htm?spm=a219a.7629140.0.0.p7hJKp&treeId=257&articleId=105735&docType=1
    my_data = {
        "msgtype":"text",
        "text":{
            "content":"帅的人,美的人,一定会记得写禅道和OneNote   "
        },
        "at":{
            "isAtAll":True
        }
    }

    #你的钉钉机器人url
    my_url = "钉钉群对应的机器人URL"
    send_request(my_url, my_data)


if __name__ == "__main__":
    main();

2、创建定时任务:

我一开始是按照下述文章进行创建:

创建Windows定时任务:https://jingyan.baidu.com/article/4b52d702a89aadfc5c774b82.htmlml

但是一直报错,先是说:计划任务:此任务要求指定的用户帐户以批处理作业权限登录

于是就修改了组策略:http://blog.51cto.com/alirentk/1122966,如果找不到组策略,可以在运行框中输入“gpedit.msc ”,点击确定或者直接按键盘上的回车键。

 

后来又说我登陆用户的权限不够,那就 提升权限,大家自行google。

然后经过漫长的时间,我执行运行,但是bat并没有跑起来。 于是我开始弃用这种方式,直接使用命令行:

schtasks /create /TN dingdingding /ST 16:09 /sc DAILY /TR "F:\github\dingding\remind\ontime.bat"

关于schtasks的操作,大家自行google。 在方式下终于成功了,看来CMD才是最靠谱的。

 

 

 

 

你可能感兴趣的:(杂记)