苦力班长减负第一步:班长的微信群发小助手(办公的自动化小工具)

平时我是个臭当班长的,干着大把脏活累活,为了能让自己更好的为班级服务,我用几十行写了个python脚本,完成一些累人的活

常见需求:就如疫情期间放假,这就很头疼了,要收集学生去哪,要收集学生从哪回来吧啦吧啦的问题,常见用问卷收集

所面临问题

  1. 面对已收集的问卷,如何在班级中催收剩余没交的同学,毕竟大学生那拖延的尿性,总是有人爱答不理折磨班长
  2. 若把名单发群里,对于不看手机的同学来说属于无效催收,需要一对一发微信
  3. 如果这样还找不到人怎么办,自求多福吧

解决方法

  1. 将完成人的名单和全班名单对比筛选出未提交人姓名
  2. 给这些未提交人群发微信通知

实现

需求很简单,代码直接贴,前期准备,需要:全班人名单.xlsx,已提交名单.xlsx 且:均有姓名字段

姓名
同学1
同学2
同学3
同学4
  1. 查出未交名单并加入发送名单中
import pandas as pd
source = pd.read_excel('./全班人名单.xlsx', sheet_name='Sheet1',)
compare = pd.read_excel('E:/桌面/已提交名单.xlsx', sheet_name='Sheet1',)
Sname = list(source.姓名)#提取全部成员的姓名
Cname = list(compare.姓名)#提取已交成员的姓名

send_s=[]#发送名单
for i in Sname:
    if( i  not in Cname):
        print(i) #打印未提交人姓名
        send_s.append(i)#加入发送名单
submited = len(send_s)
print(str(submited)+"未交") #打印未交人数
print(str(66-submited)+"已交") #打印已交人数,66是班级人数
  1. 登录微信

pip install -U wxpy -i "https://pypi.doubanio.com/simple/"

from wxpy import *

bot = Bot(True)
friends = bot.friends(True) #获取好友列表
  1. 发送微信,这里有个前提,我设置的班级同学的微信备注是:18信科-姓名,用
for f in friends:
    for name in send_s: #条件群发
        if(f.name == '18信科–{}'.format(name)):
            f.send_msg("填一下微信班群发的问卷,很急") #班级部分成员群发
            print(str(f.name)+":已发送")
            break
  1. 这是全班群发的样子
for f in friends:
    for name in Sname: #全部群发
        if(f.name == '18信科–{}'.format(name)):
            f.send_msg()  #内容填写处
            print(str(f.name)+":已发送")
            break
  1. 这是给特定好友发微信的样子
for f in friends:
    if(f.name == '父上'):
        f.send_msg("我没钱了!")
        print("发送文本成功")
        break
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值