Python3 itchat实现微信定时发送群消息的实例代码


Posted in Python onJuly 12, 2019

一、简介

1,使用微信,定时往指定的微信群里发送指定信息。

2,需要发送的内容使用excel进行维护,指定要发送的微信群名、时间、内容。

二、py库

1,itchat:这个是主要的工具,用于连接微信个人账号接口。以下是一些相关的知识点网站。

2,xlrd:这个是用来读Excel文件的工具。

3,apscheduler:这个是用来定时调度时间的工具。

三、实例代码

# coding=utf-8
from datetime import datetime
import itchat
import xlrd
from apscheduler.schedulers.background import BlockingScheduler
import os
def SentChatRoomsMsg(name, context):
  itchat.get_chatrooms(update=True)
  iRoom = itchat.search_chatrooms(name)
  for room in iRoom:
    if room['NickName'] == name:
      userName = room['UserName']
      break
  itchat.send_msg(context, userName)
  print("发送时间:" + datetime.now().strftime("%Y-%m-%d %H:%M:%S") + "\n"
    "发送到:" + name + "\n"
    "发送内容:" + context + "\n")
  print("*********************************************************************************")
  scheduler.print_jobs()
def loginCallback():
  print("***登录成功***")
def exitCallback():
  print("***已退出***")
itchat.auto_login(hotReload=True, enableCmdQR=True, loginCallback=loginCallback, exitCallback=exitCallback)
workbook = xlrd.open_workbook(
  os.path.join(os.path.dirname(os.path.realpath(__file__)), "chatroomsfile\AutoSentChatroom.xlsx"))
# workbook = xlrd.open_workbook("D:\PyCharmCode\AutoLiulishouWechat\chatroomsfile\AutoSentChatroom.xlsx")
sheet = workbook.sheet_by_name('Chatrooms')
iRows = sheet.nrows
scheduler = BlockingScheduler()
index = 1
for i in range(1, iRows):
  textList = sheet.row_values(i)
  name = textList[0]
  context = textList[2]
  float_dateTime = textList[1]
  date_value = xlrd.xldate_as_tuple(float_dateTime, workbook.datemode)
  date_value = datetime(*date_value[:5])
  if datetime.now() > date_value:
    continue
  date_value = date_value.strftime('%Y-%m-%d %H:%M:%S')
  textList[1] = date_value
  scheduler.add_job(SentChatRoomsMsg, 'date', run_date=date_value,
  kwargs={"name": name, "context": context})
  print("任务" + str(index) + ":\n"
  
"待发送时间:" + date_value + "\n"
  
 "待发送到:" + name + "\n"
 
 "待发送内容:" + context + "\n"
  
 "******************************************************************************\n")
  index = index + 1
if index == 1:
  print("***没有任务需要执行***")
scheduler.start()

总结

以上所述是小编给大家介绍的Python3 itchat实现微信定时发送群消息的实例代码 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python通过pil模块将raw图片转换成png图片的方法
Mar 16 Python
使用Python的Twisted框架实现一个简单的服务器
Apr 16 Python
Python中多线程的创建及基本调用方法
Jul 08 Python
对numpy中向量式三目运算符详解
Oct 31 Python
详解如何设置Python环境变量?
May 13 Python
python 直接赋值和copy的区别详解
Aug 07 Python
PyCharm第一次安装及使用教程
Jan 08 Python
Python自动化测试笔试面试题精选
Mar 12 Python
opencv 图像滤波(均值,方框,高斯,中值)
Jul 08 Python
Python pandas对excel的操作实现示例
Jul 21 Python
python实现xml转json文件的示例代码
Dec 30 Python
pytorch 计算Parameter和FLOP的操作
Mar 04 Python
flask应用部署到服务器的方法
Jul 12 #Python
如何通过50行Python代码获取公众号全部文章
Jul 12 #Python
python flask 如何修改默认端口号的方法步骤
Jul 12 #Python
python pandas获取csv指定行 列的操作方法
Jul 12 #Python
Python3 执行Linux Bash命令的方法
Jul 12 #Python
Flask-WTF表单的使用方法
Jul 12 #Python
解决Python中pandas读取*.csv文件出现编码问题
Jul 12 #Python
You might like
php实现socket推送技术的示例
2017/12/20 PHP
Laravel框架验证码类用法实例分析
2019/09/11 PHP
[JS]点出统计器
2020/10/11 Javascript
js实现GridView单选效果自动设置交替行、选中行、鼠标移动行背景色
2010/05/27 Javascript
JQuery Dialog的内存泄露问题解决方法
2010/06/18 Javascript
基于JavaScript实现高德地图和百度地图提取行政区边界经纬度坐标
2016/01/22 Javascript
Angularjs中UI Router的使用方法
2016/05/14 Javascript
浅谈JS之tagNaem和nodeName
2016/09/13 Javascript
浅谈React 属性和状态的一些总结
2016/11/21 Javascript
基于JavaScript+HTML5 实现打地鼠小游戏逻辑流程图文详解(附完整代码)
2017/11/02 Javascript
ES6关于Promise的用法详解
2018/05/07 Javascript
JavaScript中set与get方法用法示例
2018/08/15 Javascript
详解Vue中使用插槽(slot)、聚类插槽
2019/04/12 Javascript
js实现动态时钟
2020/03/12 Javascript
jQuery实现鼠标放置名字上显示详细内容气泡提示框效果的方法分析
2020/04/04 jQuery
JavaScript arguments.callee作用及替换方案详解
2020/09/02 Javascript
vue组件添加事件@click.native操作
2020/10/30 Javascript
python实现远程通过网络邮件控制计算机重启或关机
2018/02/22 Python
PyQt5实现无边框窗口的标题拖动和窗口缩放
2018/04/19 Python
Python实现全排列的打印
2018/08/18 Python
python3.4控制用户输入与输出的方法
2018/10/17 Python
Python线性拟合实现函数与用法示例
2018/12/13 Python
python创建与遍历List二维列表的方法
2019/08/16 Python
tensorflow 只恢复部分模型参数的实例
2020/01/06 Python
Python字典添加,删除,查询等相关操作方法详解
2020/02/07 Python
新英格兰最大的特色礼品连锁店:The Paper Store
2018/07/23 全球购物
教育课题研究自我鉴定范文
2013/12/28 职场文书
工作表扬信的范文
2014/01/10 职场文书
大学生工作自荐书
2014/06/16 职场文书
口才训练演讲稿范文
2014/09/16 职场文书
2015年社区平安建设工作总结
2015/05/13 职场文书
党员转正申请报告
2015/05/15 职场文书
关于公司年会的开幕词
2016/03/04 职场文书
90行Python代码开发个人云盘应用
2021/04/20 Python
详解JavaScript中Arguments对象用途
2021/08/30 Javascript
nginx 配置缓存
2022/05/11 Servers