from wxpy import *
import time
import json
import requests

def build_text(unrename,text):
    """
    生产定时发送文本
    :return:
    """
    namelist = ""
    for new_name in unrename:
        name_text = "@" + new_name
        namelist = name_text + namelist
    reply_text=namelist+"\n"+text
    #print(namelist)
    return reply_text

def wx_reply(reply_string):
    """
    微信群定时发送消息
    :param reply_string:
    :return:
    """
    #登录微信
    print('小新上线')
    bot = Bot(cache_path=True)
    # str=input("请输入管理群昵称:")
    # bot.groups().search()  返回的是群列表
    group = bot.groups().search("天学网AI工程师预备营1")
    # print(group)
    # 在刚刚找到的第一个群中搜索
    found = group[0]
    #print (found)
    # 初始化未重命名人员列表
    unrename = []
    sum_num = len(found)
    #print("群现有人数%d " % (sum_num))
    # 注意方法后边不需要加()

    owner = found.owner
    # print(found.owner())
    print("群成员列表--  群管理员:%s"% owner.name)
    print("-" * 50)
    for member in found:
        print(member)
        # unrename.append(member.display_name)
        if member.display_name == "" and member != owner:
            unrename.append(member.name)

    unrename_num = len(unrename)
    print("-" * 50)
    print("群现有人数:%d ,未修改群昵称人数:%d " % (sum_num, unrename_num))
    print("未修改群昵称列表:",unrename)
    #return unrename
    reply_text=build_text(unrename,reply_string)
    #发送群消息
    #print (reply_text)
    found.send_msg(reply_text)

def day_time(input_time,reply_str):
    """
    实现每天定时执行任务功能,
    :return:
    """
    #设定定时时间
   #input_time=input("请输入你要设定的每天定时执行任务时间,格式:20:21:23:")
    #设定定时发送的文本
    #reply_str=input("请输入固定回复信息:")

    while True:
        # 获取当前时间戳
        ticks = time.time()
        # 获取当前时间,返回元组
        localtime_now = time.localtime(ticks)
        # print ("当前时间:",localtime_now)
        # 获取格式化的时间
        time_asc = time.asctime(localtime_now)
        while time_asc[11:19]==input_time:
            # 调用要执行的任务
            # print ("执行定时任务")
            wx_reply(reply_str)
            #延时作用:time_asc[11:19]获取时间为 时:分:秒,如果不添加延时,程序会在计时的一秒内重复执行多次
            time.sleep(61.)


            #将计时器列表置空
            time_asc=[]

def set_time_text():
    """
    设定每天定时时间,固定回复文本
    :return:
    """
    # 设定定时时间
    x=input("默认定时时间为:10:00:00,是否需要修改输入:(y/n) ")
    if x is "y":
        input_time = input("请输入你要设定的每天定时执行任务时间,格式:01:01:00 ")
        #判断格式是否正确
    else:
        input_time="10:00:00"

    # 设定定时发送的文本
    reply_str = "欢迎加入天学网AI工程师预备营 学习群,入群有两件小事要完成哦~\n" \
                "1、请先把您的群昵称修改为 “学校+昵称+专业”(学生格式)或者“地区+昵称+岗位”(在职格式)\n" \
                "2、做一个简单的自我介绍,让大家认识你吧!\n" \
                "欢迎一起来学习,跟着天学网AI学院成长。"
    print ("默认回复文本/n","-"*50)
    print (reply_str)
    print ("-"*50)
    t= input("是否需要修改回复信息:(y/n) ")
    if t is "y":
        reply_str = input("请输入固定回复信息: ")

    return input_time,reply_str



if __name__=="__main__":
    #设定文本,时间
    my_time,my_text=set_time_text()
    #print (my_time,my_text)
    day_time(my_time,my_text)





 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐