Python之釘釘機器人推送天氣預報

通過Python腳本結合釘釘機器人,定時向釘釘群推送天氣預報


#!/usr/bin/python
# -*- coding: utf-8 -*-
# Author: aiker@gdedu.ml
# My blog http://m51cto.51cto.blog.com 
import requests
import re
import urllib2
import json
import sys
import osheaders = {'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).contenthearders = "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"}

釘釘群收到消息如圖:

Python之釘釘機器人推送天氣預報

做計劃任務:

# 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自動推送天氣預報到釘釘群



本文轉自 喵來個魚 51CTO博客,原文鏈接:http://blog.51cto.com/m51cto/2072280,如需轉載請自行聯系原作者

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/279122.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/279122.shtml
英文地址,請注明出處:http://en.pswp.cn/news/279122.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

google +按鈕_如何禁用或改善Google的Google+集成

google 按鈕If you’ve used Google lately, you’ve probably seen Google taking over Google’s search results. You don’t have to put up with it — you can disable the integration, show better social-networking pages or hide those pesky Google notifications.…

P2680 運輸計劃

傳送門 十分顯然完成工作的時間和航耗時最長的運輸計劃有關 所以題目意思就是要求最大值最小 所以可以想到二分 把所有大于mid時間的航線打上標記&#xff0c;顯然刪邊只能在所有這些航線的公共路徑上 要如何快速打標記是個問題 二分已經有一個log&#xff0c;所以只能承受O(n)…

java 集合讀寫同步_JAVA多線程學習十六 - 同步集合類的應用

1.引言在多線程的環境中&#xff0c;如果想要使用容器類&#xff0c;就需要注意所使用的容器類是否是線程安全的。在最早開始&#xff0c;人們一般都在使用同步容器(Vector,HashTable),其基本的原理&#xff0c;就是針對容器的每一個操作&#xff0c;都添加synchronized來進行同…

Linux下的parted工具的使用 GPT分區安裝系統

安裝系統是安裝前時候ctrlatlF2 fdisk -l parted select /dev/sdb mklabel msdos # 將GPT磁盤格式化為MBR磁盤 對大硬盤進行分區 xfs 和 ntfs Linux下的parted工具的使用也很簡單&#xff0c;具體操作如下&#xff1a; rootme:/mnt# parted /dev/sda Using /dev/sda Welcome to…

ubuntu自定義菜單_如何自定義Ubuntu的每日消息

ubuntu自定義菜單Ubuntu displays an informative message, known as the message of the day, when a user logs in at the terminal. The MOTD is fully customizable — you can add your own text and other dynamic data. 當用戶在終端上登錄時&#xff0c;Ubuntu將顯示信…

java避免使用orderby_java – @OrderBy在JPA中無法正常工作

OrderBy如何運作&#xff1f;它在以下代碼中不起作用&#xff1a;Employee.javapackage com.semanticbits.pojo;import java.util.List;import javax.persistence.CascadeType;import javax.persistence.Embedded;import javax.persistence.Entity;import javax.persistence.Ge…

BigDecimal四舍五入與保留位

1.引言 借用《Effactive Java》這本書中的話&#xff0c;float和double類型的主要設計目標是為了科學計算和工程計算。他們執行二進制浮點運算&#xff0c;這是為了在廣域數值范圍上提供較為精確的快速近似計算而精心設計的。然而&#xff0c;它們沒有提供完全精確的結果&#…

火狐web開發清楚緩存_如何使用Firefox的Web開發工具

火狐web開發清楚緩存Firefox’s Web Developer menu contains tools for inspecting pages, executing arbitrary JavaScript code, and viewing HTTP requests and other messages. Firefox 10 added an all-new Inspector tool and updated Scratchpad. Firefox的Web Develop…

Leetcode400Nth Digit第N個數字

在無限的整數序列 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...中找到第 n 個數字。 注意: n 是正數且在32為整形范圍內 ( n < 231)。 示例 1: 輸入: 3 輸出: 3 示例 2: 輸入: 11 輸出: 0 說明: 第11個數字在序列 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ... 里是0&#xff0c;它是…

Java基類共同屬性設置_多選擇基類的訪問屬性-Java初學筆記

多選擇基類的訪問屬性你現在知道在定義類的訪間屬性時可用的選擇項&#xff0c;你希望使用這些類定義子類。你知道在類繼承上這些屬性所具有的效果&#xff0c;但是你如何決定到底應該使用哪一個呢?這里沒有死板和現成的規則&#xff0c;你選擇的訪問屬性取決于在將來你想用類…

IT:如何在Windows Server 2008 R2上安裝Hyper-V虛擬化

Windows Server 2008 R2 and later releases of the product ship with a virtualization platform called Hyper-V, which works quite well since it’s built into Windows. Today we’re going to show you how to install it. Windows Server 2008 R2和更高版本的產品附帶…

FineReport單行與數據庫交互的方法

1. 問題描述 我們在做一張報表填報的時候經常會遇到需要在一行進行添加動作&#xff0c;將該行數據直接與數據庫交互&#xff0c;執行存儲過程過程。我們可以通過每一行增加帆軟“插入”按鈕實現插入動作&#xff0c;并且在控件事件中增加和數據庫的交互&#xff0c;但當事件…

java cas volatile_每日一個知識點:Volatile 和 CAS 的弊端之總線風暴

每日一個知識點系列的目的是針對某一個知識點進行概括性總結&#xff0c;可在一分鐘內完成知識點的閱讀理解&#xff0c;此處不涉及詳細的原理性解讀。一、什么是總線風暴總線風暴&#xff0c;聽著真是一個帥氣的詞語&#xff0c;但如果發生在你的系統上那就不是很美麗了&#…

SqlServer之代碼塊相關

轉載必需注明出處:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/sqlserver-codeblock/ 一、go語句 Go語句是SqlServer中用來表示當前代碼塊結束提交并確認結果的語句。 Go語句不能和其他Sql命令卸載同一行上&#xff01; 定義的局部變量作用域局限在定義它的代碼…

010 使用list和tuple

list Python內置的一種數據類型是列表&#xff1a;list。list是一種有序的集合&#xff0c;可以隨時添加和刪除其中的元素。 比如&#xff0c;列出班里所有同學的名字&#xff0c;就可以用一個list表示&#xff1a; >>> classmates [Michael, Bob, Tracy] >>&g…

IT:如何使用Server 2008 R2上的遠程桌面服務設置自己的終端服務器

In today’s IT learning article, we are going to take a look at installing Terminal Services, otherwise known as Remote Desktop Services, on a Server 2008 R2 machine. 在今天的IT學習文章中&#xff0c;我們將介紹在Server 2008 R2計算機上安裝終端服務(也稱為遠程…

java 中的chartdata_獲取Helm Charts中的文件夾列表

獲得了位于templates文件夾之外的配置文件列表&#xff0c;我們將其輸入到如下的helm圖表中&#xff1a;├── configs│ ├── AllEnvironments│ │ ├── Infrastructure│ │ └── Services│ │ ├── ConfigFile1│ │ ├── ConfigFile2│ ├…

Win10 jdk的安裝以及環境變量的配置,及需要注意的坑

此篇文章獻給自己&#xff0c;希望下次長點記性 最近本人終于有時間開始學習appium&#xff0c;并且開始在電腦上配置環境&#xff0c;第一步就是在我那剛裝的Win10 系統上安裝jdk&#xff0c;過程并不順利&#xff0c;由于之前都是用的win7&#xff0c;幾乎都是一路的下一步&a…

java部分服務出現異常_Java web service 異常

1.org/apache/commons/discovery/tools/DiscoverSingletonException in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/discovery/tools/DiscoverSingleton缺少&#xff1a;commons-logging和commons-discovery2.ojava.lang.NoClassDefFoundErr…

Jenkins配置Findbugs做源代碼安全掃描

2019獨角獸企業重金招聘Python工程師標準>>> 此內容目標閱讀用戶&#xff1a;運維人員 配置步驟如下&#xff1a; Jenkins安裝Findbugs插件 Jenkins系統管理 → 管理插件 → (可選插件)找到Findbugs及其依賴插件全部安裝成功&#xff0c;Jenkins重啟&#xff0c;即可…