请选择 进入手机版|继续访问电脑版
发新帖

分享python实现微信聊天系统功能

[复制链接]
98 0

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
  用python实现微信聊天
  准备工作
  安装非常简单,从官方源下载安装
  pip install -U wxpy
  或者从豆瓣源安装
  pip install -U wxpy -i "https://pypi.doubanio.com/simple/"
  模块初探
  安装完成后,我们来试下几个基本的功能
  1、扫码登录微信
  from wxpy import *bot = Bot()
  运行上面的程序,会弹出二维码,用手机微信扫一扫即可实现登录。
  但上面的程序有一个缺点,每次运行都要扫二维码。不过wxpy非常贴心地提供了缓存的选项,如下
  bot = Bot(cache_path=True)
  这样把登录信息保存下来,就不用每次都扫二维码了。
  2、发送消息
  bot.file_helper.send("hello")
  这里的file_helper就是微信的文件传输助手,我们给文件传输助手发送一条消息,可以在手机端收到如下的消息
  3、接受消息
  我们实现一个收到消息自动回复的功能。
  @bot.register()def print_message(msg): print(msg.text) return msg.text # 进入Python命令行,让程序保持运行embed()
  打开自己的公众号管理平台,在后端向自己发送消息,就可以收到如下的消息回复
  4、搜索好友及微信群
  知了堂培训(
028-87058185
)带大家来实现一个搜索公司群、定位老板并转发老板消息的功能
  from wxpy import * bot = Bot(cache_path=True) # 定位公司群company_group = bot.groups().search('公司微信群')[0] # 定位老板boss = company_group.search('老板大名')[0] # 将老板的消息转发到文件传输助手@bot.register(company_group)def forward_boss_message(msg): if msg.member == boss: msg.forward(bot.file_helper, prefix='老板发言') # 堵塞线程embed()
  对于老板喜欢在群里面喊话的同学来说,这是一个福音,以后再也不用担心错失老板的重要信息了~~
  数据统计
  wxpy的好友统计功能非常好用,可以很方便地统计好友的地理位置分布和性别分布。
  下面的代码中,统计了下自己的好友的分布情况,并打印出人数最多的10个地区。
  from wxpy import * bot = Bot(cache_path=True)friends_stat = bot.friends().stats() friend_loc = [] # 每一个元素是一个二元列表,分别存储地区和人数信息for province, count in friends_stat["province"].iteritems(): if province != "":  friend_loc.append([province, count]) # 对人数倒序排序friend_loc.sort(key=lambda x: x[1], reverse=True) # 打印人数最多的10个地区for item in friend_loc[:10]: print item[0], item[1]
  统计出来的地区分布数据画成图表如下
  大多数的好友也来自上海,上面的图表也如实地反应了这一情况。
  统计性别分布的代码如下
  for sex, count in friends_stat["sex"].iteritems(): # 1代表MALE, 2代表FEMALE if sex == 1: print "MALE %d" % count elif sex == 2: print "FEMALE %d" % count

举报 使用道具

回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表