程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

python面试题(7)

python杂谈(0)

标签  

python面试题(7)

python电子书(56)

日期归档  

python——微信自动回复

发布于2019-08-22 17:59     阅读(127)     评论(0)     点赞(2)     收藏(5)


  1. from wxpy import *
  2. import time
  3. import json
  4. import requests
  5. def build_text(unrename,text):
  6. """
  7. 生产定时发送文本
  8. :return:
  9. """
  10. namelist = ""
  11. for new_name in unrename:
  12. name_text = "@" + new_name
  13. namelist = name_text + namelist
  14. reply_text=namelist+"\n"+text
  15. #print(namelist)
  16. return reply_text
  17. def wx_reply(reply_string):
  18. """
  19. 微信群定时发送消息
  20. :param reply_string:
  21. :return:
  22. """
  23. #登录微信
  24. print('小新上线')
  25. bot = Bot(cache_path=True)
  26. # str=input("请输入管理群昵称:")
  27. # bot.groups().search() 返回的是群列表
  28. group = bot.groups().search("天学网AI工程师预备营1")
  29. # print(group)
  30. # 在刚刚找到的第一个群中搜索
  31. found = group[0]
  32. #print (found)
  33. # 初始化未重命名人员列表
  34. unrename = []
  35. sum_num = len(found)
  36. #print("群现有人数%d " % (sum_num))
  37. # 注意方法后边不需要加()
  38. owner = found.owner
  39. # print(found.owner())
  40. print("群成员列表-- 群管理员:%s"% owner.name)
  41. print("-" * 50)
  42. for member in found:
  43. print(member)
  44. # unrename.append(member.display_name)
  45. if member.display_name == "" and member != owner:
  46. unrename.append(member.name)
  47. unrename_num = len(unrename)
  48. print("-" * 50)
  49. print("群现有人数:%d ,未修改群昵称人数:%d " % (sum_num, unrename_num))
  50. print("未修改群昵称列表:",unrename)
  51. #return unrename
  52. reply_text=build_text(unrename,reply_string)
  53. #发送群消息
  54. #print (reply_text)
  55. found.send_msg(reply_text)
  56. def day_time(input_time,reply_str):
  57. """
  58. 实现每天定时执行任务功能,
  59. :return:
  60. """
  61. #设定定时时间
  62. #input_time=input("请输入你要设定的每天定时执行任务时间,格式:20:21:23:")
  63. #设定定时发送的文本
  64. #reply_str=input("请输入固定回复信息:")
  65. while True:
  66. # 获取当前时间戳
  67. ticks = time.time()
  68. # 获取当前时间,返回元组
  69. localtime_now = time.localtime(ticks)
  70. # print ("当前时间:",localtime_now)
  71. # 获取格式化的时间
  72. time_asc = time.asctime(localtime_now)
  73. while time_asc[11:19]==input_time:
  74. # 调用要执行的任务
  75. # print ("执行定时任务")
  76. wx_reply(reply_str)
  77. #延时作用:time_asc[11:19]获取时间为 时:分:秒,如果不添加延时,程序会在计时的一秒内重复执行多次
  78. time.sleep(61.)
  79. #将计时器列表置空
  80. time_asc=[]
  81. def set_time_text():
  82. """
  83. 设定每天定时时间,固定回复文本
  84. :return:
  85. """
  86. # 设定定时时间
  87. x=input("默认定时时间为:10:00:00,是否需要修改输入:(y/n) ")
  88. if x is "y":
  89. input_time = input("请输入你要设定的每天定时执行任务时间,格式:01:01:00 ")
  90. #判断格式是否正确
  91. else:
  92. input_time="10:00:00"
  93. # 设定定时发送的文本
  94. reply_str = "欢迎加入天学网AI工程师预备营 学习群,入群有两件小事要完成哦~\n" \
  95. "1、请先把您的群昵称修改为 “学校+昵称+专业”(学生格式)或者“地区+昵称+岗位”(在职格式)\n" \
  96. "2、做一个简单的自我介绍,让大家认识你吧!\n" \
  97. "欢迎一起来学习,跟着天学网AI学院成长。"
  98. print ("默认回复文本/n","-"*50)
  99. print (reply_str)
  100. print ("-"*50)
  101. t= input("是否需要修改回复信息:(y/n) ")
  102. if t is "y":
  103. reply_str = input("请输入固定回复信息: ")
  104. return input_time,reply_str
  105. if __name__=="__main__":
  106. #设定文本,时间
  107. my_time,my_text=set_time_text()
  108. #print (my_time,my_text)
  109. day_time(my_time,my_text)

 



所属网站分类: 技术文章 > 博客

作者:熊猫烧香

链接:https://www.pythonheidong.com/blog/article/53393/e55671ef63e5bb20edaa/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

2 0
收藏该文
已收藏

评论内容:(最多支持255个字符)