目录
- 1. openpyxl — 操作Excel的王者
- 2. pandas — 处理表格数据,神!
- 3. python-docx — Word文档的搬砖小能手
- 4. PyPDF2 — 合并拆分PDF,轻松搞定
- 5. smtplib + email — 自动群发邮件,别太爽
- 6. schedule — 定时执行小助手
- 7. pyautogui — 模拟鼠标键盘操作,骚到飞起
- 8. xlwings — Excel神器,带你飞!
- 9. tqdm www.devze.com;— 让你的脚本帅气起来(带进度条)
- 10. os + shutil — 文件批量处理必备
今天想跟大家聊点实打实有用的,——办公自动化最常用的10个Python库。
说实话,这些库我都是亲测过的,不是网上随便扒拉几行总结的那种。
都是那种——让你上班摸鱼、下班轻松、老板夸你“效率高得离谱”——的真·神器!好啦,废话不多说,直接开盘!
1. openpyxl — 操作Excel的王者
记得有次我加班处理一个巨大的Excel文件,数据多到鼠标转圈圈,我js都开始怀疑人生了。
结果,openpyxl几行代码就搞定了,我当场差点感动到流泪。基本用法:
from openpyxl import load_workbook wb = load_workbook('e编程客栈xample.xlsx') sheet = wb.active print(sheet['A1'].value) sheet['A1'] = 'Hello, world!' wb.save('example_modified.xlsx')
小细节提醒:
openpyxl默认只支持.xlsx
格式哦,老版本的.xls
要用xlrd
配合用,不然会报错!
2. pandas — 处理表格数据,神!
说到办公,表格数据绝对是重灾区,天天跟Excel打交道的我简直快被函数绕晕了。
有一次领导甩给我一堆销售数据,语气还挺轻描淡写地说:“这个麻烦你算一下总额、平均www.devze.com值,顺便分类下啊,早点给我。”我当时手里还攥着奶茶呢,差点一口没吸上来……
脑子一抽,我打开了pandas,10分钟出结果,20分钟加图表,30分钟打包发邮件。领导一看,“嗯,做得不错,很细致啊。”我装着镇定,心里早就偷着乐了:要是没pandas,我今晚铁定加班到十点。
简单示例:
import pandas as pd df = pd.read_excel('sales.xlsx') print(df.head()) total = df['销售额'].sum() print(f"总销售额:{total}")
注意:
安装pandas之前,记得装好openpyxl
,否则直接read_excel
的时候会提示缺依赖!
3. python-docx — Word文档的搬砖小能手
有次写工作总结,老板要求统一格式、统一字体,手动改?不可能的,这辈子都不可能。
python-docx轻松帮我自动生成Word报告,一边跑脚本一边喝可乐,快乐爆表。基本用法:
from docx import Document doc = Document() doc.add_heading('周总结', 0) doc.add_paragraph('本周完成了以下任务:...') doc.save('weekly_report.docx')
小细节:
Word里的段落和样式,docx操作时顺序很重要,一不小心可能搞乱。建议多试几次,踩踩坑!
4. PyPDF2 — 合并拆分PDF,轻松搞定
要不是PyPDF2,我可能还得用Adobe手动拆分合并PDF。
用Python,几秒钟批量处理,贼舒服。简单示例:
import PyPDF2 merger = PyPDF2.PdfMerger() merger.append('file1.pdf') merger.append('file2.pdf') merger.write('merged.pdf') merger.close()
小提醒:
如果遇到加密的PDF,PyPDF2可以解密,但得知道密码哈。
5. smtplib + email — 自动群发邮件,别太爽
有段时间帮人力资源小姐姐群发offer邮件,人手一个简历、一个通知。
我一开始还傻傻手动发了5封……后来想想不对啊!立马用smtplib搞了个自动发邮件的小脚本,瞬间起飞。代码示例:
import smtplib from email.mime.text import MIMEText msg = MIMEText('你好,恭喜你通过面试!') msg['Subject'] = '录用通知' msg['From'] = 'me@example.com' msg['To'] = 'you@example.com' server = smtplib.SMTP('smtp.example.com', 587) server.starttls() server.login('me@example.com', 'password') server.send_message(msg) server.quit()
小细节:
有些公司邮箱服务器防得特别严,记得提前问一下IT部门SMTP设置!
6. schedule — 定时执行小助手
有时候想定时跑脚本,比如每天早上8点发日报。
不用自己死死盯着,schedule就像个小闹钟,叮一下,自动运行。简单示例:
import schedule import time def job(): print("每天8点发送日报") schedule.every().day.at("08:00").do(job) while True: schedule.run_pending() time.sleep(1)
7. pyautogui — 模拟鼠标键盘操作,骚到飞起
记得有次系统登录页面没有API,死活只能手动点。
后来我一怒之下写了javascriptpyautogui脚本,自动打开浏览器、输入账号、敲回车,全程不用动手,简直太有成就感了!示例:
import pyautogui pyautogui.moveTo(100, 200) pyautogui.click() pyautogui.typewrite('hello world') pyautogui.press('enter')
细节提醒:
操作速度太快可能导致界面反应不过来,可以加点pyautogui.PAUSE = 1.0
,防止失控~
8. xlwings — Excel神器,带你飞!
说白了,openpyxl处理静态表格还行,要是想直接操作“开着”的Excel文件?那还得上xlwings。
我用它做了个报价单自动填写的小工具,敲一下Enter,全自动填好一大堆表格,旁边的同事羡慕得目瞪口呆。示例:
import xlwings as xw wb = xw.Book('example.xlsx') sheet = wb.sheets['Sheet1'] sheet.range('A1').value = 'Hello, Excel!' wb.save() wb.close()
9. tqdm — 让你的脚本帅气起来(带进度条)
有些脚本运行特别慢,看着命令行空白啥都没有,心里特慌。
tqdm一加,进度条一滚,瞬间心里就踏实了很多。用法:
from tqdm import tqdm import time for i in tqdm(range(100)): time.sleep(0.1)
10. os + shutil — 文件批量处理必备
搬文件、改名、拷贝啥的,Python自带的os
和shutil
就已经很好用了。
例子:
import os import shutil files = os.listdir('data') for file in files: if file.endswith('.txt'): shutil.copy(os.path.join('data', file), 'backup')
以上就是办公自动化最常用的10个Python库分享的详细内容,更多关于Python办公自动化库的资料请关注编程客栈(www.devze.com)其它相关文章!
精彩评论