python登录WeChat 实现自动回复实例详解


Posted in Python onMay 28, 2019

最近实现了一些微信的简单玩法 我们可以通过网页版的微信微信网页版,扫码登录后去抓包爬取信息,还可以post去发送信息。

》》安装itchat这个库     pip install itchat

先来段简单的试用,实现微信的登录,运行下面代码会生成一个二维码,扫码之后手机端确认登录,就会发送一条信息给‘filehelper',这个filehelper就是微信上的文件传输助手。

import itchat

# 登录
itchat.login()
# 发送消息
itchat.send(u'你好鸭!', 'filehelper')

它会给这个文件传输助手自动发送你好鸭!

除了登录和发送消息我们还可以这么来玩,往下走~

》》实现微信好友男女比例

想统计下自己微信里好友的性别比例,当然也是很简单,先获取好友列表,统计列表里性别计数

import itchat

# 先登录
itchat.login()

# 获取好友列表
friends = itchat.get_friends(update=True)[0:]

# 初始化计数器,有男有女,当然,有些人是不填的
male = female = other = 0

# 遍历这个列表,列表里第一位是自己,所以从"自己"之后开始计算
# 1表示男性,2女性
for i in friends[1:]:
 sex = i["Sex"]
 if sex == 1:
 male += 1
 elif sex == 2:
 female += 1
 else:
 other += 1

# 总数算上,好计算比例啊~
total = len(friends[1:])

# 好了,打印结果
print (u"男性好友:%.2f%%" % (float(male) / total * 100))
print (u"女性好友:%.2f%%" % (float(female) / total * 100))
print (u"其他:%.2f%%" % (float(other) / total * 100))

运行结果:

python登录WeChat 实现自动回复实例详解

》》实现微信自动回复

接着来实现一个类似qq上的自动回复,原理就是接收到消息,就发消息回去,同时发一条给文件助手,就可以在文件助手中统一查看消息。

代码很简单,来看看

#coding=utf8
import itchat

# 自动回复
# 封装好的装饰器,当接收到的消息是Text,即文字消息
@itchat.msg_register('Text')
def text_reply(msg):
 # 当消息不是由自己发出的时候
 if not msg['FromUserName'] == myUserName:
 # 发送一条提示给文件助手
 itchat.send_msg(u"[%s]收到好友@%s 的信息:%s\n" %
   (time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(msg['CreateTime'])),
    msg['User']['NickName'],
    msg['Text']), 'filehelper')
 # 回复给好友
 return u'[自动回复]您好,我现在有事不在,一会再和您联系。\n已经收到您的的信息:%s\n' % (msg['Text'])

if __name__ == '__main__':
 itchat.auto_login()

 # 获取自己的UserName
 myUserName = itchat.get_friends(update=True)[0]["UserName"]
 itchat.run()

运行后会保持登录状态,开启自动回复模式,手机上查看:

python登录WeChat 实现自动回复实例详解

 python登录WeChat 实现自动回复实例详解

当然,除了文字Text信息,还可以接收图片(表情包算图片),语音,名片,地理位置,分享和类型为Note的信息(就是有人提示类的消息,例如撤回消息),把装饰器写成下面形式即可实现

@itchat.msg_register(['Map', 'Card', 'Note', 'Sharing', 'Picture','Text'])

python登录WeChat 实现自动回复实例详解

Python 相关文章推荐
安装Python的教程-Windows
Jul 22 Python
python之pandas用法大全
Mar 13 Python
Python3.6简单反射操作示例
Jun 14 Python
python实现京东订单推送到测试环境,提供便利操作示例
Aug 09 Python
Pytorch 搭建分类回归神经网络并用GPU进行加速的例子
Jan 09 Python
python GUI库图形界面开发之PyQt5布局控件QHBoxLayout详细使用方法与实例
Mar 06 Python
Tensorflow安装问题: Could not find a version that satisfies the requirement tensorflow
Apr 20 Python
Python实现ElGamal加密算法的示例代码
Jun 19 Python
python怎么调用自己的函数
Jul 01 Python
Jupyter Notebook安装及使用方法解析
Nov 12 Python
Python的代理类实现,控制访问和修改属性的权限你都了解吗
Mar 21 Python
Python使用永中文档转换服务
May 06 Python
Python语言进阶知识点总结
May 28 #Python
python图像和办公文档处理总结
May 28 #Python
python网络应用开发知识点浅析
May 28 #Python
python进程和线程用法知识点总结
May 28 #Python
selenium+python环境配置教程详解
May 28 #Python
Python从函数参数类型引出元组实例分析
May 28 #Python
python面试题Python2.x和Python3.x的区别
May 28 #Python
You might like
PHP面向对象法则
2012/02/23 PHP
解析php函数method_exists()与is_callable()的区别
2013/06/21 PHP
PHP cdata 处理(详细介绍)
2013/07/05 PHP
PHP调用VC编写的COM组件实例
2014/03/29 PHP
ThinkPHP中url隐藏入口文件后接收alipay传值的方法
2014/12/09 PHP
浅析PHP7新功能及语法变化总结
2016/06/17 PHP
经常用的图片在容器中的水平垂直居中实例
2007/06/10 Javascript
JavaScript 字符串连接性能优化
2008/12/20 Javascript
Prototype String对象 学习
2009/07/19 Javascript
菜鸟javascript基础资料整理2
2010/12/06 Javascript
js读取并解析JSON类型数据的方法
2015/11/14 Javascript
javaScript嗅探执行神器-sniffer.js
2017/02/14 Javascript
js评分组件使用详解
2017/06/06 Javascript
jQuery.form.js的使用详解
2017/06/14 jQuery
Vue 将后台传过来的带html字段的字符串转换为 HTML
2018/03/29 Javascript
解决Vue中mounted钩子函数获取节点高度出错问题
2018/05/18 Javascript
Vue中使用create-keyframe-animation与动画钩子完成复杂动画
2019/04/09 Javascript
layui type2 通过url给iframe子页面传值的例子
2019/09/06 Javascript
vue实现移动端返回顶部
2020/10/12 Javascript
实现vuex原理的示例
2020/10/21 Javascript
在windows下快速搭建web.py开发框架方法
2016/04/22 Python
Python爬取京东的商品分类与链接
2016/08/26 Python
Python实现简单过滤文本段的方法
2017/05/24 Python
Python编程之字符串模板(Template)用法实例分析
2017/07/22 Python
django rest framework之请求与响应(详解)
2017/11/06 Python
Python基于hashlib模块的文件MD5一致性加密验证示例
2018/02/10 Python
基于python的多进程共享变量正确打开方式
2018/04/28 Python
python 实现快速生成连续、随机字母列表
2019/11/28 Python
Python3 requests模块如何模仿浏览器及代理
2020/06/15 Python
详解基于python的图像Gabor变换及特征提取
2020/10/26 Python
酒店经理职责
2014/01/30 职场文书
2016年春季运动会通讯稿
2015/11/25 职场文书
技术入股合作协议书
2016/03/21 职场文书
浙江省杭州市平均工资标准是多少?
2019/07/09 职场文书
python实现腾讯滑块验证码识别
2021/04/27 Python
Python实现双向链表
2022/05/25 Python