python3实现公众号每日定时发送日报和图片


Posted in Python onFebruary 24, 2018

本文实例为大家分享了python3实现公众号每日定时发送的具体代码,供大家参考,具体内容如下

步骤是这样:先申请公众号,找到接口文件。看了之后发现主要是通过corpid(企业秘钥)和corpsecret(应用秘钥)获得登录token,通过这个token进入各个url操作。

我这个用的是企业微信,所以有部门。其他公众号也类似。结果如下:

python3实现公众号每日定时发送日报和图片

# -*- coding:utf-8 -*-
import requests
import json
import time

url0 = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken'

def get_group_id(): #查看部门与成员
 values_address = {'corpid': '你的corpid',
    'corpsecret': 通讯录corpsecret',
    }
 req = requests.post(url0, params=values_address)
 data = json.loads(req.text)
 token = data["access_token"]
 url_department="https://qyapi.weixin.qq.com/cgi-bin/department/list?access_token="+token #部门
 r_department=requests.get(url_department)
 result_department=r_department.json()
 result_department_no=result_department['department']
 print("***已获取部门信息如下:")
 for item in result_department_no:
  print("[部门]:",item['id']," [部门名称]:",item[ 'name']," [父部门]:",item['parentid']," [序号]:",item['order'])
 print("***已获取成员信息如下:")
 for i in range(len(result_department_no)):
  i=i+1
  url_member = "https://qyapi.weixin.qq.com/cgi-bin/user/simplelist?access_token=%s&department_id=%s&fetch_child=FETCH_CHILD" % (token, i) # 成员
  r_member = requests.get(url_member)
  result_member = r_member.json()
  result_member_no = result_member['userlist']
  for item in result_member_no:
   print("[成员id]:", item['userid'], " [成员名称]:", item['name'], " [所属部门]:", item['department'])
 return result_department_no,result_member_no


def upload_img():
 values_address = {'corpid': '你的corpsecret',
    'corpsecret': '应用corpsecret',
    }
 req = requests.post(url0, params=values_address)
 data = json.loads(req.text)
 token = data["access_token"]
 print("***已获取token.")

 url_upimg="https://qyapi.weixin.qq.com/cgi-bin/media/upload?access_token=%s&type=%s"%(token,"image")
 files = {'filename': ('xn.JPG', open("D:\DOCS\DAY\邮件/DRjpg.JPG", 'rb'))
    } # 显式的设置文件名
 values_upimg={
 "Content - Type": 'multipart/form-data; boundary="----WebKitFormBoundaryn5UouHKhfu8g2XNp";',
 "Content - Length": '331698; boundary="----WebKitFormBoundaryn5UouHKhfu8g2XNp";',
 "Content - Disposition":'form-data; name="image"; boundary=----WebKitFormBoundaryn5UouHKhfu8g2XNp;',
 "content - type": "application/octet-stream; boundary=----WebKitFormBoundaryn5UouHKhfu8g2XNp;"
}
 req_upimg = requests.post(url_upimg,files=files, data=values_upimg)
 data = json.loads(req_upimg.text)
 media_id=data['media_id']
 print("***已获取素材所需id.")
 return token,media_id

def send_msg(token,media_id): #发送图片
 url="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token="+token
 values = {
 "touser": "@all",
 "toparty" : "2", #***************部门******************
 "msgtype" : "image",
 "agentid" : 1000003,
 "image" : {
  "media_id" : media_id
 },
 "safe":0
}
 data = json.dumps(values)
 req = requests.post(url, data)
 print("返回结果:", req.text)
 return req
 #打印返回信息


while True:
 current_time = time.localtime(time.time())
 if ((current_time.tm_hour == 8) and (current_time.tm_min == 13) and (current_time.tm_sec == 50)):
  (result_department_no, result_member_no) = get_group_id()
  (token, media_id) = upload_img()
  send_msg(token,media_id)
 time.sleep(1)

效果是这样:

python3实现公众号每日定时发送日报和图片

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python两个整数相除得到浮点数值的方法
Mar 18 Python
Python的Urllib库的基本使用教程
Apr 30 Python
Python正则表达式如何进行字符串替换实例
Dec 28 Python
python利用拉链法实现字典方法示例
Mar 25 Python
Python实现的微信公众号群发图片与文本消息功能实例详解
Jun 30 Python
Python中如何导入类示例详解
Apr 17 Python
PyQt5实现简易电子词典
Jun 25 Python
pymysql之cur.fetchall() 和cur.fetchone()用法详解
May 15 Python
使用keras2.0 将Merge层改为函数式
May 23 Python
Python使用itcaht库实现微信自动收发消息功能
Jul 13 Python
Python 实现图片转字符画的示例(静态图片,gif皆可)
Nov 05 Python
Python中requests库的用法详解
Jun 05 Python
详解如何在python中读写和存储matlab的数据文件(*.mat)
Feb 24 #Python
使用python和pygame绘制繁花曲线的方法
Feb 24 #Python
python3操作微信itchat实现发送图片
Feb 24 #Python
python自动12306抢票软件实现代码
Feb 24 #Python
浅谈Python中的zip()与*zip()函数详解
Feb 24 #Python
python模仿网页版微信发送消息功能
Feb 24 #Python
python2.7读取文件夹下所有文件名称及内容的方法
Feb 24 #Python
You might like
php jquery 实现新闻标签分类与无刷新分页
2009/12/18 PHP
关于初学PHP时的知识积累总结
2013/06/07 PHP
PHP面向对象之旅:深入理解static变量与方法
2014/01/06 PHP
php常用的url处理函数总结
2014/11/19 PHP
朋友网关于QQ相关的PHP代码(研究QQ的绝佳资料)
2015/01/26 PHP
如何在旧的PHP系统中使用PHP 5.3之后的库
2015/12/02 PHP
PHP载入图像imagecreatefrom_gif_jpeg_png系列函数用法分析
2016/11/14 PHP
PHP实现基于PDO扩展连接PostgreSQL对象关系数据库示例
2018/03/31 PHP
File, FileReader 和 Ajax 文件上传实例分析(php)
2011/04/27 Javascript
jquery在项目中做复选框时遇到的一些问题笔记
2013/11/17 Javascript
JavaScript使用forEach()与jQuery使用each遍历数组时return false 的区别
2016/08/26 Javascript
layer弹出层中H5播放器全屏出错的解决方法
2017/02/21 Javascript
JS原生带小白点轮播图实例讲解
2017/07/22 Javascript
Js面试算法详解
2018/04/08 Javascript
JS中this的指向以及call、apply的作用
2018/05/06 Javascript
JS函数内部属性之arguments和this实例解析
2018/10/07 Javascript
vue实现自定义H5视频播放器的方法步骤
2019/07/01 Javascript
vue+element搭建后台小总结 el-dropdown下拉功能
2020/04/10 Javascript
详谈Object.defineProperty 及实现数据双向绑定
2020/07/18 Javascript
Antd的table组件表格的序号自增操作
2020/10/27 Javascript
微信小程序轮播图swiper代码详解
2020/12/01 Javascript
vue 递归组件的简单使用示例
2021/01/14 Vue.js
为Python程序添加图形化界面的教程
2015/04/29 Python
tensorboard 可以显示graph,却不能显示scalar的解决方式
2020/02/15 Python
JAVA及PYTHON质数计算代码对比解析
2020/06/10 Python
浅谈pytorch中torch.max和F.softmax函数的维度解释
2020/06/28 Python
python try...finally...的实现方法
2020/11/25 Python
利用CSS3的特性改变文本选中时的颜色
2013/09/11 HTML / CSS
中国宠物用品商城:E宠商城
2016/08/27 全球购物
英国奢侈品网站:MatchesFashion
2016/12/16 全球购物
会计毕业生自荐书
2014/06/12 职场文书
大学生简历求职信
2014/06/24 职场文书
大学生简短的自我评价
2014/09/12 职场文书
部队个人年终总结
2015/03/02 职场文书
感谢师恩主题班会
2015/08/17 职场文书
2016年小学中秋节活动总结
2016/04/05 职场文书