事情是這樣的,罪惡的資本家老闆,快下班了給我發一個壓縮包,讓我把數據發給客戶微信,搞完就可以下班了,我心想這麼好,一個文件不是讓我直接就提前下班嗎,萬萬沒想到… 我就知道,萬惡的資本家怎麼可能放棄剝削我的機會,我打開一看,一個壓縮包裡面放了幾百個表格,一個表格裡面N個人,幾十萬條數據,三個微信好友一 ...
事情是這樣的,罪惡的資本家老闆,快下班了給我發一個壓縮包,讓我把數據發給客戶微信,搞完就可以下班了,我心想這麼好,一個文件不是讓我直接就提前下班嗎,萬萬沒想到…
我就知道,萬惡的資本家怎麼可能放棄剝削我的機會,我打開一看,一個壓縮包裡面放了幾百個表格,一個表格裡面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、啟動微信:確保右下角的微信開著。
發送效果展示
# 兄弟們學習python,有時候不知道怎麼學,從哪裡開始學。掌握了基本的一些語法或者做了兩個案例後,不知道下一步怎麼走,不知道如何去學習更加高深的知識。 # 那麼對於這些大兄弟們,我準備了大量的免費視頻教程,PDF電子書籍,以及源代碼! # 還會有大佬解答! # 包括本文代碼都在這個群里了 279199867 # 歡迎加入,一起討論 一起學習!
01信息核對
最後
1、用這種方法,就可以輕鬆將個人的信息單獨發給個人,保護隱私。
2、電腦自動發送,方便快捷,避免遺漏,效率超級高。
3、後續進行時間和班組選擇設置。
最後給大家推薦一套Python教程:代碼總是學完就忘記?100個爬蟲實戰項目!讓你沉迷學習丨學以致用丨下一個Python大神就是你!