将表格内不一样的数据,用Python自动发送给不同的人,实现高效
2022-09-24 本文已影响0人
傻逼平台瞎几把封号
事情是这样的,罪恶的资本家老板,快下班了给我发一个压缩包,让我把数据发给客户微信,搞完就可以下班了,我心想这么好,一个文件不是让我直接就提前下班吗,万万没想到…
我就知道,万恶的资本家怎么可能放弃剥削我的机会,我打开一看,一个压缩包里面放了几百个表格,一个表格里面N个人,几十万条数据,三个微信好友一万多人,我真的会谢…
都特么四点了,这不是搞我吗?换别的同事,这起码要在公司通宵了~
还好我藏了一手Python,平常只是在家接接单兼职,没有在公司展示过,嘿嘿~
虽然对于别人来说,这很难,但是对于会Python的我来说,简直就是手到擒来,10分钟就搞定下班回家了,气死老板~
背景需求
数据太多了,手动输入的话,非常的浪费时间,通常excel文件里包含了名字、用户名和初始sin 。
我这里随机取几个数据为例
然后进一步尝试如何从导出的excel里调用数据,引入python代码中进行微信自动发送。
代码演示
0、文件路径
excel在“C:\Users\Administrator\Desktop\test”下面
1、向4位客户微信,发送他们自己的用户名和初始sin
2、代码样式(随便放在任意路径下)
需求:
从excel导入4个用户名和密码
用python,通过微信自动发送给每个人自己的用户名和密码
from datetime import datetime
import time
import pyautogui as pg
import pyperclip as pc
import sys
import time
import pyperclip
import win32api
import win32con
import os
import xlrd
inpath = 'C:\Users\Administrator\Desktop\test\\用户名密码.xlsx'#excel文件所在路径
data = xlrd.open_workbook(inpath, encoding_override='utf-8')
table = data.sheets()[0]#选定第一张表
nrows = table.nrows#获取行号
ncols = table.ncols#获取列号
for i in range(1, nrows):#第0行为表头
alldata = table.row_values(i)#循环输出excel表中每一行,即所有数据
name = alldata[0]#取出表中第二列数据
user_name = alldata[1]#取出表中第二列数据
sin = alldata[2]#取出表中第二列数据
print(name,user_name,sin)
class SendMsg(object): # 自动发送程序
def __init__(self):
self.name = name
self.msg = '''{}老师:\n\nXX学分网网址:http:\\1234.shedu.sh.cn
\n您的用户名是:\n\n{}\n\n您的初始密码是:\n\n{}
\n(python机器人测试,请忽略,不用回复)'''.format(name,user_name,sin)
# 发送不同的消息 # 这里还要注意两位数
# self.msg = '{}老师,12121.本信息为预设程序自动发送。不用回复。\n2.如果已经完成,请忽略。'.format(n[0])
# n[0]表示只要”张三丰“里的”张“,结果就是”张老师“,n(去掉[0]),结果就是”张三丰老师“
def send_msg(self):
# 操作间隔为1秒
pg.PAUSE = 1
pg.hotkey('ctrl', 'alt', 'w')
pg.hotkey('ctrl', 'f')
# 找到好友
pc.copy(self.name)
pg.hotkey('ctrl', 'v')
pg.press('enter')
# 发送消息
pc.copy(self.msg)
pg.hotkey('ctrl', 'v')
pg.press('enter')
# 隐藏微信
time.sleep(0.5)
pg.hotkey('ctrl', 'alt', 'w')
if __name__ == '__main__':
s = SendMsg()
# while True:
for i in range(1): # 每句话发送几次,如001发送两次=001 001 ,002两次=002、002:
s.send_msg()
# n +=/ 1
#
sys.exit(0) # 发送完成后,退出
# 与第一个for 平行 每个账户发送两次不同编号
进一步需求:
- 可以选择班组发送
- 设置时间定时提醒、然后定时发送
3、启动微信:确保右下角的微信开着。
发送效果展示
01信息核对
最后
1、用这种方法,就可以轻松将个人的信息单独发给个人,保护隐私。
2、电脑自动发送,方便快捷,避免遗漏,效率超级高。
3、后续进行时间和班组选择设置。
最后给大家推荐一套Python教程:代码总是学完就忘记?100个爬虫实战项目!让你沉迷学习丨学以致用丨下一个Python大神就是你!