python实现微信自动回复及批量添加好友功能


Posted in Python onJuly 03, 2019

先给大家介绍下python微信自动回复功能

1.当收到好友消息时,自动回复

import random
import itchat
import requests
import time
def get_tuling_response(_info):
  print(_info)
  # 图灵机器人的网址
  api_url = "http://www.tuling123.com/openapi/api"
  data = {
    'key': '5ea0f11b5b6146239c52a47849387484',
    'info': _info,
    'userid':'wechat-robot'
  }
  # 发送数据到指定网址,获取网址返回的数据(字典数据类型)
  res = requests.post(api_url, data).json()
  # print(res, type(res))
  # 给用户返回的内容
  print(res['text'])
  return res['text']
# 时刻监控好友发送的文本消息, 并且给予一个回复,
# isGroupChat=True接收群聊消息中的文本信息, 并让图灵机器人自动回复;
# isMapChat=True接收群聊消息中的文本信息, 并让图灵机器人自动回复;
@itchat.msg_register(itchat.content.TEXT, isFriendChat=True)
def text_reply(msg):
  # 需求: 只对固定的群聊消息, 实现机器人聊天.
  # 获取好友发送消息的内容

ps:下面介绍下python 批量生成微信添加好友截图

# -*- coding: utf-8 -*-
import time,random,os
import PIL.Image as Image
import PIL.ImageColor as ImageColor
import PIL.ImageDraw as ImageDraw
import PIL.ImageFont as ImageFont
# from PIL import Image, ImageDraw
"""
  author@:xiaohe
  QQ496631085
  python3.7
"""
def circle_corner(img, radii):
  """
  圆角处理
  :param img: 源图象。
  :param radii: 半径,如:30。
  :return: 返回一个圆角处理后的图象。
  """
  # 画圆(用于分离4个角)
  circle = Image.new('L', (radii * 2, radii * 2), 0) # 创建一个黑色背景的画布
  draw = ImageDraw.Draw(circle)
  draw.ellipse((0, 0, radii * 2, radii * 2), fill=255) # 画白色圆形
  # 原图
  img = img.convert("RGBA")
  w, h = img.size
  # 画4个角(将整圆分离为4个部分)
  alpha = Image.new('L', img.size, 255)
  alpha.paste(circle.crop((0, 0, radii, radii)), (0, 0)) # 左上角
  alpha.paste(circle.crop((radii, 0, radii * 2, radii)), (w - radii, 0)) # 右上角
  alpha.paste(circle.crop((radii, radii, radii * 2, radii * 2)), (w - radii, h - radii)) # 右下角
  alpha.paste(circle.crop((0, radii, radii, radii * 2)), (0, h - radii)) # 左下角
  # alpha.show()
  img.putalpha(alpha) # 白色区域透明可见,黑色区域不可见
  return img
#对象,位置  字体 字体大小  字体颜色   添加内容
def imgAddFont(im1,gps,font,fontSize,fontColor,data):
  # 在图片上添加文字 1
  draw = ImageDraw.Draw(im1)
  #设置字体
  time_font = ImageFont.truetype(font, fontSize)
  # (0,0):坐标 "内容":添加的字体 (0,0,255):字体颜色 font:字体大小
  draw.text(gps,data,fontColor,font=time_font)
  draw = ImageDraw.Draw(im1)
def copy(h,m,z,n,v):
  #手机当前时间 系统时间
  systime = str(h) + ":"+str(m)
  #小时随便减去多少
  add_h=random.randint(2,5)
  #分钟随便减去多少
  add_m=random.randint(2,7)
  #添加好友的时间
  addtime = str(h-add_h) + ":"+str(m-add_m)
  #标题名称
  # qun_name = "电销 " + n
  qun_name = n
  #电池电量
  diannum = str(v)
  #打开图片 
  im1=Image.open("new.png")
  #系统时间 (宽 高)
  imgAddFont(im1,(17,20),'C:\Windows\Fonts\msyh.ttc',38,(50,50,50),systime)
  #电池电量
  imgAddFont(im1,(1012,21),'C:\Windows\Fonts\simhei.ttf',29,(50,50,50),diannum)
  #群姓名
  imgAddFont(im1,(120,108),'C:\Windows\Fonts\msyh.ttc',49,(50,50,50),qun_name)
  #添加时间
  imgAddFont(im1,(490,260),'C:\Windows\Fonts\msyh.ttc',38,(170,170,170),addtime)
  # #发消息时间
  # imgAddFont(im1,(490,260),'C:\Windows\Fonts\msyh.ttc',38,(170,170,170),addtime)
  # 保存位置 22 370
  # img=im1
  # 已经添加好完整的文字了,下面添加图片 打开 缩略  圆角 合并
  # 打开头像原图检测是否存在不存在就换个后缀
  jpg_path = '.\\img\\' + (str(z))
  if os.path.exists(jpg_path+".jpg"):
    img = Image.open(jpg_path+".jpg")
  else:
    img = Image.open(jpg_path+".png")
  img = circle_corner(img, radii=20)
  #缩放等比例的尺寸
  w, h = img.size
  img.thumbnail((118, 118)) # 尺寸等比缩放
  # 打开底图
  layer = Image.new('RGBA', im1.size, (0,0,0,0))
  layer.paste(img, (20, 370))
  out=Image.composite(layer,im1,layer)
  # out.save("target.png")
  save_time=time.strftime('%Y_%m_%d_%M_%H',time.localtime(time.time()))
  out.save(save_time +str(z)+".png")
  # out.save("target.png")
h=int(input("请输入手机几点"))
m=int(input("请输入现在几分"))
v=int(input("请输入现在电量"))
z=int(input("请输入需要生成多少张图片"))
for x in range(1,z+1):
  n=input("请输入标题昵称 例如好友")
  copy(h,m,x,n,v)

总结

以上所述是小编给大家介绍的python实现微信自动回复及批量添加好友功能 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
在类Unix系统上开始Python3编程入门
Aug 20 Python
python单线程下实现多个socket并发过程详解
Jul 27 Python
Python获取当前脚本文件夹(Script)的绝对路径方法代码
Aug 27 Python
python获取网络图片方法及整理过程详解
Dec 20 Python
Python+OpenCV实现旋转文本校正方式
Jan 09 Python
Python打包工具PyInstaller的安装与pycharm配置支持PyInstaller详细方法
Feb 27 Python
python with语句的原理与用法详解
Mar 30 Python
python如何处理程序无法打开
Jun 16 Python
浅谈多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
Jun 30 Python
详解Python直接赋值,深拷贝和浅拷贝
Jul 09 Python
python 实现Harris角点检测算法
Dec 11 Python
Python采集壁纸并实现炫轮播
Apr 30 Python
Python 中Django安装和使用教程详解
Jul 03 #Python
利用python求积分的实例
Jul 03 #Python
python可视化爬虫界面之天气查询
Jul 03 #Python
python读写配置文件操作示例
Jul 03 #Python
Python正则表达式匹配数字和小数的方法
Jul 03 #Python
在python中利用numpy求解多项式以及多项式拟合的方法
Jul 03 #Python
python读取图片的方式,以及将图片以三维数组的形式输出方法
Jul 03 #Python
You might like
mysq GBKl乱码
2006/11/28 PHP
一周学会PHP(视频)Http下载
2006/12/12 PHP
php安全开发 添加随机字符串验证,防止伪造跨站请求
2013/02/14 PHP
Laravel框架学习笔记(二)项目实战之模型(Models)
2014/10/15 PHP
PHP读取PPT文件的方法
2015/12/10 PHP
Yii实现简单分页的方法
2016/04/29 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
任意位置显示html菜单
2007/02/01 Javascript
javascript onmouseout 解决办法
2010/07/17 Javascript
按钮JS复制文本框和表格的代码
2011/04/01 Javascript
分享2个jQuery插件--jquery.fileupload与artdialog
2014/12/26 Javascript
js同源策略详解
2015/05/21 Javascript
vue快捷键与基础指令详解
2017/06/01 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
js canvas画布实现高斯模糊效果
2018/11/27 Javascript
原生js实现Flappy Bird小游戏
2018/12/24 Javascript
小程序跳转到的H5页面再跳转回跳小程序的方法
2020/03/06 Javascript
JavaScript 双向链表操作实例分析【创建、增加、查找、删除等】
2020/04/28 Javascript
Vue 禁用浏览器的前进后退操作
2020/09/04 Javascript
[03:48]2014DOTA2 TI专访71DK夺冠不靠小组赛高排名
2014/07/11 DOTA
python数据结构之链表的实例讲解
2017/07/25 Python
浅析PHP与Python进行数据交互
2018/05/15 Python
使用CSS3制作饼状旋转载入效果的实例
2015/06/23 HTML / CSS
基础的CSS3弹性盒Flexbox布局使用实例
2016/04/08 HTML / CSS
当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
2014/09/09 面试题
集体婚礼证婚词
2014/01/13 职场文书
买卖车协议书
2014/04/21 职场文书
工地安全质量标语
2014/06/07 职场文书
宣传活动总结范文
2014/07/01 职场文书
关于读书的演讲稿1000字
2014/08/27 职场文书
教师党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
幼儿园开学报名通知
2015/07/16 职场文书
关于环保的广播稿
2015/12/17 职场文书
MySQL系列之十二 备份与恢复
2021/07/02 MySQL
JS setTimeout与setInterval的区别
2022/04/20 Javascript
el-form每行显示两列底部按钮居中效果的实现
2022/08/05 HTML / CSS