很久没有写博客了,除夕夜,除了年夜饭之外感觉没意思,微信拜年消息很多,大多数都是群发消息,为了不去人肉回复,怀着对技术一致的好奇和探索态度,看到了itchat python的第三方api能做这个事,就拿起电脑,研究了一下,网上也有很多的的资料,本博客也是学习别人,应用于自己,感谢各位技术牛人不吝惜的分享,才能使得技术离我们都很近。

记录一下。首先安装环境,很快,如果电脑上已经有了python的程序,以管理员身份运行cmd(c:\windows\system32\ 右键cmd ,管理员身份运行即可),然后输入  pip install itchat   等待安装!

然后打开编辑器(记事本、vscode等等只要能写代码即可),先上两个效果图,一个是给所有朋友群发消息的,一个是自动回复的;

1.自动回复:代码如下

import time
import itchat
from itchat.content import *@itchat.msg_register(itchat.content.TEXT)
def print_content(msg):myUserName = itchat.get_friends(update=True)[0]["UserName"]##获取自己的usernameprint('myUserName=',myUserName)print('FromUserName=',msg['FromUserName'])##获取发消息的好友的usernameremark_name=msg['User']['RemarkName']###备注名称time.sleep(3)if not msg['FromUserName'] == myUserName:###如果不是自己发的username=msg['User']['NickName']remarkname=msg['User']['RemarkName']defaultReply = '新年快乐!祝 ' + remarkname + ' 在新的一年里身体健康,每天有个好心情!';print('msg=',msg)print('username=',msg['User']['NickName'])itchat.send_msg(defaultReply,msg['FromUserName'])itchat.auto_login(True)###登录,扫码,相当于登录微信网页版
itchat.run()###loop,监听收到消息事件

itchat 将根据接受到的消息类型寻找对应的已注册的方法,代码中@itchat.msg_register(itchat.content.TEXT) 相当于注册,即微信收到任何人发的文本消息,就调用函数,这里注册的时候msg_register 函数可以增加参数表示好友之间isFriendChat、isGroupChat表示群聊,isMapChat表示公众号,根据需要确定;图中我打印出了接受到的消息详情,可以看到json的数据接结构,有很多字段(备注名、微信名等等),大家可以灵活的根据字段去进行灵活多变的处理,比发给特定人,自动回复特定人等等;

2.群发消息

import time
import itchat
from itchat.content import *itchat.auto_login(True)
WANT_TO_SAY = u'祝%s狗年旺旺,身体健康!!'friendList = itchat.get_friends(update=True)[1:]###获取好友列表
i=0
for friend in friendList:i+=1print('第%d个    '%(i),WANT_TO_SAY % (friend['DisplayName'] or friend['NickName']))#itchat.send(WANT_TO_SAY % (friend['DisplayName']or friend['NickName']))time.sleep(.3)

效果

登录后,获取好友列表,遍历并发送消息内容,很快,很简单,当然如果只是测试,print,即可,真的发送,就调用itchat.send

花了半个小时研究出来这点东西,python真的是方便,具体的原理等待后续研究,这只是简单的应用;加油!

python-itchat微信消息群发、自动回复相关推荐

  1. python自动回复微信群的消息_程序员用python实现微信消息群发和微信自动回复

    程序员用python实现微信消息群发和微信自动回复 每当逢年过节的时候, 你是否会遇到要给亲朋好友发祝福而不得不重复复制.改名.发送的麻烦, 还有收到许多好友祝福又来不及回复的情况.如果有,这篇文章正 ...

  2. 用python实现微信消息群发和微信自动回复

    每当逢年过节的时候, 你是否会遇到要给亲朋好友发祝福而不得不重复复制.改名.发送的麻烦, 还有收到许多好友祝福又来不及回复的情况.如果有,这篇文章正好能解决您的问题. 本文以新年祝福为例, 基于pyt ...

  3. python实现微信消息群发和微信自动回复

    2019独角兽企业重金招聘Python工程师标准>>> 基于python的第三方库itchat, 实现微信祝福分组群发和自动回复好友祝福的功能. 这里的分组发送实现原理是这样的, 首 ...

  4. Python itchat微信机器人自动回复

    ** Python itchat微信机器人自动回复 ** 第一次写博客,以后会继续更新; 以下是使用Pythobn写的自动微信回复功能,目前支持设置离开状态及机器人回复状态,适合新手学习: 环境:WI ...

  5. python自动回复机器人手机版_GitHub - HZQHZA/wxpy: Python 写 微信聊天 根据 自动回复 接入机器人 等等.......

    wxpy Python 写 微信聊天 根据 自动回复 接入机器人 等等.... wxpy: 用 Python 玩微信 #项目介绍 wxpy登录就给好友发消息 发图片   自动回复信息   添加好友自动 ...

  6. Python发送微信消息(文字、图片、文件)给指定好友和微信群,零基础可看懂(附源码和教程)

    前言 本示例是调用Windows API模拟发送,用Python调用win32api这个库来调用Windows API模拟人的手动操作来发送消息. 在使用前,请将你微信的窗口设置为在最前面,这样就便于 ...

  7. 使用 Python 实现微信消息的一键已读

    文章目录 使用 Python 实现微信消息的一键已读 1.实现思路 2.安装依赖 3.编写代码 4.运行效果 使用 Python 实现微信消息的一键已读 关键词 微信消息一键已读 微信消息批量已读 微 ...

  8. Python发送微信消息(文字、图片、文件)给指定好友和微信群(调用Win32 API模拟人的手动操作来发送消息)

    本示例是调用Windows API模拟发送,用Python调用win32api这个库来调用Windows API模拟人的手动操作来发送消息. 在使用前,请将你微信的窗口设置为在最前面,这样就便于程序找 ...

  9. 用Python调教微信,实现自动回复 和 微信好友分布,好友性别图,好友标签

    官方华丽的术语---略 一个自动回复机器人 微信自上线以来,一直没有自动回复的功能,想必是有他们的理念.但是有些人群,确实对此功能有一定需求,我举两个栗子: 不愿时刻被消息打扰的人 消息需要批量处理的 ...

  10. python微信好友检测_用Python调教微信,实现自动回复 和 微信好友分布,好友性别图,好友标签...

    官方华丽的术语---略 一个自动回复机器人 微信自上线以来,一直没有自动回复的功能,想必是有他们的理念.但是有些人群,确实对此功能有一定需求,我举两个栗子: 不愿时刻被消息打扰的人 消息需要批量处理的 ...

最新文章

  1. WinRAR 注册方法
  2. Anaconda:成功解决Anaconda下载时速度超慢(conda下载慢)的几种方法图文教程
  3. 2021年度【CSDN】硕果累累、满怀期待、新年憧憬
  4. Android UI布局之LinearLayout
  5. 查漏补缺方为上策!!两万六字总结vue的基本使用和高级特性,周边插件vuex和vue-router任你挑选
  6. 亮剑:PHP,我的未来不是梦(11)
  7. js过渡效果_干货 | Vue事件、过渡和制作index页面
  8. mysql索引linke和等于_MySQL索引怎么用?秒懂只需四个点!
  9. AI产品经理-什么是人工智能
  10. 方剂学(综合练习)题库【2】
  11. Stata:实时估计个股贝塔(beta)系数
  12. fiddler抓手机显示网络连接失败
  13. 中国电信php,一个基于中国电信开放应用平台的短信发送函数(PHP版)
  14. 用where in遇到null时的解决方法1
  15. 如何优雅地使用 Sublime Text
  16. XGen for iOS789 简明 教程
  17. 均方根与峭度系数_调节阀流量系数的影响因素及其工程应用调节阀流量系数的影响...
  18. 从华为起诉三星 看中国知识产权建设
  19. Java如何创建一个文件对象
  20. 数论函数 - 莫比乌斯函数与莫比乌斯反演 - 基础杜教筛

热门文章

  1. 软件安全开发生命周期(SSDL)全景图
  2. Linux(GPU)显卡清理缓存
  3. Extjs6关于Ajax和form表单提交以及store请求session超时的处理方法
  4. bat和半导体公司的利润率的比较
  5. Oracle JDK各版本下载汇总
  6. 求a+aa+aaa+aaaa+aaaaa的值
  7. VoLTE信令泛读补充业务4:呼叫保持业务之恢复流程
  8. 【DFT leakage 频谱泄露现象】
  9. 【机器学习】聚类分析与主成分分析(附例题源码)
  10. 彻底解决LSASS.exe进程病毒!