Python之钉钉机器人推送天气预报

通过Python脚本结合钉钉机器人,定时向钉钉群推送天气预报


#!/usr/bin/python
# -*- coding: utf-8 -*-
# Author: [email protected]
# My blog http://m51cto.51cto.blog.com
import requests
import re
import urllib2
import json
import sys
import os

headers = {‘Content-Type‘: ‘application/json;charset=utf-8‘}
api_url = "https://oapi.dingtalk.com/robot/send?access_token=37e23308d1b84eb4ac34566e03c4c4e74bxxx7xxxxxxxxxxx"
##从钉钉机器人设置中拷贝
def msg(text):
    json_text= {
     "msgtype": "text",
        "at": {
            "atMobiles": [
                "132xxxx1280"
            ],
            "isAtAll": False
        },
        "text": {
            "content": text
        }
    }
    print requests.post(api_url,json.dumps(json_text),headers=headers).content

hearders = "User-Agent","Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36"

url = "https://tianqi.moji.com/weather/china/guangdong/shenzhen"    ##要爬去天气预报的网址
par = ‘(<meta name="description" content=")(.*?)(">)‘    ##正则匹配,匹配出网页内要的内容

##创建opener对象并设置为全局对象
opener = urllib2.build_opener()
opener.addheaders = [hearders]
urllib2.install_opener(opener)

##获取网页
html = urllib2.urlopen(url).read().decode("utf-8")

##提取需要爬取的内容
data = re.search(par,html).group(2)
msg(data)

拷贝脚本时请去掉注释
运行脚本:

python weather.py
{"errcode":0,"errmsg":"ok"}

钉钉群收到消息如图:

做计划任务:

# crontab -e
no crontab for root - using an empty one
30 8 * * * /usr/bin/python /root/script/weather.py 2> /dev/null > /dev/null

每天早晨8:30自动推送天气预报到钉钉群

原文地址:http://blog.51cto.com/m51cto/2072280

时间: 2024-11-04 13:02:11

Python之钉钉机器人推送天气预报的相关文章

nodejs通过钉钉群机器人推送消息

nodejs 通过钉钉群机器人推送消息 Intro 最近在用 nodejs 写,之前的 nodejs 爬虫代码用 js 写的,感觉可维护性太差,也没有智能提示,于是把js改用ts(typescript)重写一下,提升代码质量. 爬虫启动之后不定期会出现验证码反爬虫,需要输入验证码才能继续,于是想在需要输入验证码时推送一个消息给用户,让用户输入验证码以继续爬虫的整个流程.我们平时用钉钉办公,钉钉群有个机器人,很方便于是就实现了一个通过钉钉的群机器人实现消息推送. 实现 代码是 ts 实现的,用了

通过钉钉群聊机器人推送zabbix告警

1.首先在zabbix服务端的alertscripts目录下新建一个dingding.sh脚本,内容如下: #!/bin/bash Content=$2 curl 'https://oapi.dingtalk.com/robot/send?access_token=XXXX' \ -H 'Content-Type: application/json' \ -d ' {"msgtype": "text", "text": { "conte

Python写的CSDN信息推送小助手

转载请注明出处:http://blog.csdn.net/gamer_gyt 博主微博:http://weibo.com/234654758 Github:https://github.com/thinkgamer 前言 这几天突然萌生了一个想法:自己写个python程序,定时查询一下自己的CSDN博客的一些信息,并以邮件的形式推送给自己,那么废话不多说,现在已经把基本功能给实现了,每天可以定时发送访问量,积分,排名,同时会比较前一天的数据,形成对比,呈现给自己,这样就能一目了然的看到自己每天博

python微信聊天机器人改进版,定时或触发抓取天气预报、励志语录等,向好友推送

最近想着做一个微信机器人,主要想要实现能够每天定时推送天气预报或励志语录,励志语录要每天有自动更新,定时或当有好友回复时,能够随机推送不同的内容.于是开始了分析思路.博主是采用了多线程群发,因为微信对频繁发送消息过快还会出现发送失败的问题,因此还要加入time.sleep(1),当然时间根据自身情况自己定咯.本想把接入写诗机器人,想想自己的渣电脑于是便放弃了,感兴趣的可以尝试一下.做完会有不少收获希望对你有帮助. (1)我们要找个每天定时更新天气预报的网站,和一个更新励志语录的网站.当然如果你想

Zabbix-3.0.3实现钉钉告警

版本:v1.0 作者:白树潮 Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合钉钉作为主要的告警方式,这样可以及时有效的把告警信息推送到接收人,方便告警的及时处理. 一.创建钉钉机器人推送告警信息 添加一个机器人即可 复制webhook API后面会调用接口去推送告警信息 配置zabbix 下载程序:go语言写的一个api程序 https://cucc.file.qiansw.com:1443/2017/02/golang

【转】[钉钉通知系列]Jenkins发布后自动通知

转载请注明出处:https://www.cnblogs.com/jianxuanbing/p/7211006.html 阅读目录 一.前言 二.使用钉钉推送的优势 三.配置 一.前言 最近使用Jenkins进行自动化部署,但是发布署后,并没有相应的通知,虽然有邮件发送通知,但是发现邮件会受限于大家接受的设置,导致不能及时看到相关的发布内容.由于之前有用Gitlab推送消息到钉钉的方式,因此考虑Jenkins是否能通知到钉钉的实现方式. 二.使用钉钉推送的优势 实时提醒项目参与人员信息的更新 便于

持续集成之 Jenkins 钉钉通知(八)

一.前言 最近使用 Jenkins 进行自动化部署,但是发布署后,并没有相应的通知,虽然有邮件发送通知,但是发现邮件会受限于大家接受的设置,导致不能及时看到相关的发布内容.由于之前有用 Gitlab 推送消息到钉钉的方式,因此考虑 Jenkins是否能通知到钉钉的实现方式. 二.使用钉钉推送的优势 实时提醒项目参与人员信息的更新. 便于查看. 三.钉钉的配置 1. 成为钉钉群主 进入某个群->点击机器人图标. 注意:如果你不是群主,且群主开启了仅群主可管理,那么你将无法创建机器人. 2.选择自定

Jenkins发布后自动通知【钉钉】

阅读目录 一.前言 二.使用钉钉推送的优势 三.配置 一.前言 最近使用Jenkins进行自动化部署,但是发布署后,并没有相应的通知,虽然有邮件发送通知,但是发现邮件会受限于大家接受的设置,导致不能及时看到相关的发布内容.由于之前有用Gitlab推送消息到钉钉的方式,因此考虑Jenkins是否能通知到钉钉的实现方式. 二.使用钉钉推送的优势 实时提醒项目参与人员信息的更新 便于查看 三.配置 3.1 钉钉的配置 3.1.1 进入钉钉群 进入某个群->点击机器人图标注意:如果你不是群主,且群主开启

钉钉自定义机器人配合SVN钩子事件进行消息的推送实践

目前很多公司还是使用SVN(TortoiseSVN)进行版本控制,使用简单,适合管理一般项目.协同办公软件目前钉钉比较成熟,阿里也一直在宣传推广,这两年公司也在使用,主要用于信息的沟通,其它的绩效.考勤.日志.审批等都是挂载的我们公司内部的系统,很方便,之后钉钉推出了钉钉机器人,一开始觉得没用,也就一直没关注,但是最近我看了钉钉自定义机器人,觉得这个可以好好利用起来,看到网上也有这方面的应用说明,看着很简单,但是按照流程操作起来各种坑,而且相关知识过于碎片化,今天我在这里进行一下简单的整合,梳理