辦公自動(dòng)化最常用的10個(gè)Python庫(kù)分享
今天想跟大家聊點(diǎn)實(shí)打?qū)嵱杏玫模?mdash;—辦公自動(dòng)化最常用的10個(gè)Python庫(kù)。
說(shuō)實(shí)話,這些庫(kù)我都是親測(cè)過(guò)的,不是網(wǎng)上隨便扒拉幾行總結(jié)的那種。
都是那種——讓你上班摸魚、下班輕松、老板夸你“效率高得離譜”——的真·神器!
好啦,廢話不多說(shuō),直接開盤!
1. openpyxl — 操作Excel的王者
記得有次我加班處理一個(gè)巨大的Excel文件,數(shù)據(jù)多到鼠標(biāo)轉(zhuǎn)圈圈,我都開始懷疑人生了。
結(jié)果,openpyxl幾行代碼就搞定了,我當(dāng)場(chǎng)差點(diǎn)感動(dòng)到流淚。
基本用法:
from openpyxl import load_workbook
wb = load_workbook('example.xlsx')
sheet = wb.active
print(sheet['A1'].value)
sheet['A1'] = 'Hello, world!'
wb.save('example_modified.xlsx')
小細(xì)節(jié)提醒:
openpyxl默認(rèn)只支持.xlsx格式哦,老版本的.xls要用xlrd配合用,不然會(huì)報(bào)錯(cuò)!
2. pandas — 處理表格數(shù)據(jù),神!
說(shuō)到辦公,表格數(shù)據(jù)絕對(duì)是重災(zāi)區(qū),天天跟Excel打交道的我簡(jiǎn)直快被函數(shù)繞暈了。
有一次領(lǐng)導(dǎo)甩給我一堆銷售數(shù)據(jù),語(yǔ)氣還挺輕描淡寫地說(shuō):“這個(gè)麻煩你算一下總額、平均值,順便分類下啊,早點(diǎn)給我。”我當(dāng)時(shí)手里還攥著奶茶呢,差點(diǎn)一口沒(méi)吸上來(lái)……
腦子一抽,我打開了pandas,10分鐘出結(jié)果,20分鐘加圖表,30分鐘打包發(fā)郵件。領(lǐng)導(dǎo)一看,“嗯,做得不錯(cuò),很細(xì)致啊。”我裝著鎮(zhèn)定,心里早就偷著樂(lè)了:要是沒(méi)pandas,我今晚鐵定加班到十點(diǎn)。
簡(jiǎn)單示例:
import pandas as pd
df = pd.read_excel('sales.xlsx')
print(df.head())
total = df['銷售額'].sum()
print(f"總銷售額:{total}")
注意:
安裝pandas之前,記得裝好openpyxl,否則直接read_excel的時(shí)候會(huì)提示缺依賴!
3. python-docx — Word文檔的搬磚小能手
有次寫工作總結(jié),老板要求統(tǒng)一格式、統(tǒng)一字體,手動(dòng)改?不可能的,這輩子都不可能。
python-docx輕松幫我自動(dòng)生成Word報(bào)告,一邊跑腳本一邊喝可樂(lè),快樂(lè)爆表。
基本用法:
from docx import Document
doc = Document()
doc.add_heading('周總結(jié)', 0)
doc.add_paragraph('本周完成了以下任務(wù):...')
doc.save('weekly_report.docx')
小細(xì)節(jié):
Word里的段落和樣式,docx操作時(shí)順序很重要,一不小心可能搞亂。建議多試幾次,踩踩坑!
4. PyPDF2 — 合并拆分PDF,輕松搞定
要不是PyPDF2,我可能還得用Adobe手動(dòng)拆分合并PDF。
用Python,幾秒鐘批量處理,賊舒服。
簡(jiǎn)單示例:
import PyPDF2
merger = PyPDF2.PdfMerger()
merger.append('file1.pdf')
merger.append('file2.pdf')
merger.write('merged.pdf')
merger.close()
小提醒:
如果遇到加密的PDF,PyPDF2可以解密,但得知道密碼哈。
5. smtplib + email — 自動(dòng)群發(fā)郵件,別太爽
有段時(shí)間幫人力資源小姐姐群發(fā)offer郵件,人手一個(gè)簡(jiǎn)歷、一個(gè)通知。
我一開始還傻傻手動(dòng)發(fā)了5封……后來(lái)想想不對(duì)?。×ⅠR用smtplib搞了個(gè)自動(dòng)發(fā)郵件的小腳本,瞬間起飛??。
代碼示例:
import smtplib
from email.mime.text import MIMEText
msg = MIMEText('你好,恭喜你通過(guò)面試!')
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()
小細(xì)節(jié):
有些公司郵箱服務(wù)器防得特別嚴(yán),記得提前問(wèn)一下IT部門SMTP設(shè)置!
6. schedule — 定時(shí)執(zhí)行小助手
有時(shí)候想定時(shí)跑腳本,比如每天早上8點(diǎn)發(fā)日?qǐng)?bào)。
不用自己死死盯著,schedule就像個(gè)小鬧鐘,叮一下,自動(dòng)運(yùn)行。
簡(jiǎn)單示例:
import schedule
import time
def job():
print("每天8點(diǎn)發(fā)送日?qǐng)?bào)")
schedule.every().day.at("08:00").do(job)
while True:
schedule.run_pending()
time.sleep(1)
7. pyautogui — 模擬鼠標(biāo)鍵盤操作,騷到飛起
記得有次系統(tǒng)登錄頁(yè)面沒(méi)有API,死活只能手動(dòng)點(diǎn)。
后來(lái)我一怒之下寫了pyautogui腳本,自動(dòng)打開瀏覽器、輸入賬號(hào)、敲回車,全程不用動(dòng)手,簡(jiǎn)直太有成就感了!
示例:
import pyautogui
pyautogui.moveTo(100, 200)
pyautogui.click()
pyautogui.typewrite('hello world')
pyautogui.press('enter')
細(xì)節(jié)提醒:
操作速度太快可能導(dǎo)致界面反應(yīng)不過(guò)來(lái),可以加點(diǎn)pyautogui.PAUSE = 1.0,防止失控~
8. xlwings — Excel神器,帶你飛!
說(shuō)白了,openpyxl處理靜態(tài)表格還行,要是想直接操作“開著”的Excel文件?那還得上xlwings。
我用它做了個(gè)報(bào)價(jià)單自動(dòng)填寫的小工具,敲一下Enter,全自動(dòng)填好一大堆表格,旁邊的同事羨慕得目瞪口呆。
示例:
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 — 讓你的腳本帥氣起來(lái)(帶進(jìn)度條)
有些腳本運(yùn)行特別慢,看著命令行空白啥都沒(méi)有,心里特慌。
tqdm一加,進(jìn)度條一滾,瞬間心里就踏實(shí)了很多。
用法:
from tqdm import tqdm
import time
for i in tqdm(range(100)):
time.sleep(0.1)
10. os + shutil — 文件批量處理必備
搬文件、改名、拷貝啥的,Python自帶的os和shutil就已經(jīng)很好用了。
尤其是配合glob批量篩選,一條龍服務(wù)。
例子:
import os
import shutil
files = os.listdir('data')
for file in files:
if file.endswith('.txt'):
shutil.copy(os.path.join('data', file), 'backup')
以上就是辦公自動(dòng)化最常用的10個(gè)Python庫(kù)分享的詳細(xì)內(nèi)容,更多關(guān)于Python辦公自動(dòng)化庫(kù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
使用python中Pydub進(jìn)行音頻格式轉(zhuǎn)換
Pydub是一個(gè)基于ffmpeg的Python音頻處理模塊,封裝了許多ffmpeg底層接口,因此用它來(lái)做音樂(lè)歌曲文件格式轉(zhuǎn)換會(huì)非常方便,本文主要介紹了使用python中Pydub進(jìn)行音頻格式轉(zhuǎn)換,感興趣的可以了解一下2025-06-06
Python實(shí)現(xiàn)掃描局域網(wǎng)活動(dòng)ip(掃描在線電腦)
這篇文章主要介紹了Python實(shí)現(xiàn)掃描局域網(wǎng)活動(dòng)ip(掃描在線電腦),本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-04-04
python 如何將帶小數(shù)的浮點(diǎn)型字符串轉(zhuǎn)換為整數(shù)
在python中如何實(shí)現(xiàn)將帶小數(shù)的浮點(diǎn)型字符串轉(zhuǎn)換為整數(shù)呢?今天小編就為大家介紹一下解決方案,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-05-05
簡(jiǎn)單分析python的類變量、實(shí)例變量
在本篇文章中小編給大家整理的是關(guān)于python類變量、實(shí)例變量的知識(shí)點(diǎn)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2019-08-08
Python利用matplotlib實(shí)現(xiàn)動(dòng)態(tài)可視化詳解
Python中的數(shù)據(jù)可視化是指原始數(shù)據(jù)的圖形表示,以更好地可視化、理解和推理,Python提供了各種庫(kù),包含用于可視化數(shù)據(jù)的不同特性,下面我們就來(lái)看看如何利用matplotlib實(shí)現(xiàn)動(dòng)態(tài)可視化吧2023-08-08
PyTorch的深度學(xué)習(xí)入門之PyTorch安裝和配置
這篇文章主要介紹了PyTorch的深度學(xué)習(xí)入門之PyTorch安裝和配置,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-06-06
對(duì)Python 兩大環(huán)境管理神器 pyenv 和 virtualenv詳解
今天小編就為大家分享一篇對(duì)Python 兩大環(huán)境管理神器 pyenv 和 virtualenv詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12
Pandas過(guò)濾dataframe中包含特定字符串的數(shù)據(jù)方法
今天小編就為大家分享一篇Pandas過(guò)濾dataframe中包含特定字符串的數(shù)據(jù)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-11-11

