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 相关文章推荐
python3访问sina首页中文的处理方法
Feb 24 Python
跟老齐学Python之不要红头文件(2)
Sep 28 Python
Python的Django框架使用入门指引
Apr 15 Python
Python生成随机数组的方法小结
Apr 15 Python
Python在不同目录下导入模块的实现方法
Oct 27 Python
Python实现找出数组中第2大数字的方法示例
Mar 26 Python
python实现多线程网页下载器
Apr 15 Python
python批量下载网站马拉松照片的完整步骤
Dec 05 Python
Django 全局的static和templates的使用详解
Jul 19 Python
python实现控制台输出彩色字体
Apr 05 Python
Python数组拼接np.concatenate实现过程
Apr 18 Python
python利用appium实现手机APP自动化的示例
Jan 26 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原理之Session Gc的一个小概率Notice
2011/04/12 PHP
PHP cdata 处理(详细介绍)
2013/07/05 PHP
php中的mongodb select常用操作代码示例
2014/09/06 PHP
php内嵌函数用法实例
2015/03/20 PHP
在WordPress中实现评论头像的自定义默认和延迟加载
2015/11/24 PHP
php注册登录系统简化版
2020/12/28 PHP
PHP 无限级分类
2017/05/04 PHP
Yii2框架中使用PHPExcel导出Excel文件的示例
2017/08/09 PHP
jquery 弹出登录窗口实现代码
2009/12/24 Javascript
打豆豆小游戏 用javascript编写的[打豆豆]小游戏
2013/01/08 Javascript
js向上无缝滚动,网站公告效果 具体代码
2013/11/18 Javascript
jquery通过visible来判断标签是否显示或隐藏
2014/05/08 Javascript
基于Jquery实现万圣节快乐特效
2015/11/01 Javascript
js中的关联数组与普通数组详解
2016/07/27 Javascript
Javascript中常见的逻辑题和解决方法
2016/09/17 Javascript
Javascript 正则表达式校验数字的简单实例
2016/11/02 Javascript
JavaScript数据结构之广义表的定义与表示方法详解
2017/04/12 Javascript
BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤
2017/08/07 Javascript
vue2手机APP项目添加开屏广告或者闪屏广告
2017/11/28 Javascript
PHP实现基于Redis的MessageQueue队列封装操作示例
2019/02/02 Javascript
vue基于better-scroll实现左右联动滑动页面
2020/06/30 Javascript
[49:54]Ti4 循环赛第三日 LGD vs Titan
2014/07/12 DOTA
Python中的map、reduce和filter浅析
2014/04/26 Python
Python批量提取PDF文件中文本的脚本
2018/03/14 Python
Spring Boot中使用IntelliJ IDEA插件EasyCode一键生成代码详细方法
2020/03/20 Python
HTML里显示pdf、word、xls、ppt的方法示例
2020/04/14 HTML / CSS
优瑞自动咖啡机官网:Jura
2018/09/29 全球购物
Spongelle官网:美国的创意护肤洗护品牌
2019/05/15 全球购物
Invicta手表官方商店:百年制表历史的瑞士腕表品牌
2019/09/26 全球购物
澳大利亚家具商店:Freedom
2020/12/17 全球购物
销售员求职个人的自我评价
2014/02/19 职场文书
毕业生自荐信如何写
2014/03/24 职场文书
“三支一扶”支教教师思想汇报
2014/09/13 职场文书
单位政审意见范文
2015/06/04 职场文书
三下乡活动心得体会
2016/01/23 职场文书
Django实现WebSocket在线聊天室功能(channels库)
2021/09/25 Python