超實用!整理了34個Python自動化辦公庫!

超實用!整理了34個Python自動化辦公庫!

超實用!整理了34Python自動化辦公庫!

 


資料來源:
https://mp.weixin.qq.com/s/lANr4UVa0hLFAEq1xBRfbQ

 

本次內容涵蓋了ExcelWordPPTODFPDF、郵件、微信、檔處理等所有能在辦公場景實現自動化的庫,希望能夠對大家有所幫助。

 

Python Excel自動化庫

 

 

// 
1.xlwings

官網:

https://www.xlwings.org/

 

特點:xlwings 是開源且免費的,預裝了 Anaconda WinPython,可在 Windows macOS 上運行。通過 Python 腳本或 Jupyter notebook 自動化 Excel,通過宏從 Excel 調用 Python,並編寫使用者定義的函數(UDF 僅適用於 Windows

 

// 
2.openpyxl

官網:

https://openpyxl.readthedocs.io

 

特點:openpyxl 是一個用於讀取 / 編寫 Excel 2010 xlsx/xlsm/xltx/xltm 檔的 Python 庫。它是由於缺乏從 Python 中讀取 / 編寫 Office Open XML 格式的現有庫而誕生的。

 

// 
3.xlrd

官網:

https://pypi.python.org/pypi/xlrd

 

特點:在 python 中,xlrd 庫是一個很常用的讀取 excel 檔的庫,其對 excel 檔的讀取可以實現比較精細的控制。

 

// 
4.xlwt

官網:

https://pypi.org/project/xlwt/

 

特點:類比於 xlrd reader,那麼 xlwt 就相對於 writer,而且很純正的一點就是它只能對 Excel 進行寫操作。xlwt xlrd 不光名字像,連很多函數和操作格式也是完全相同。

 

// 
5.xlutils

官網:

https://pypi.org/project/xlutils/

 

特點:xlutilsexcel utilities)是一個提供了許多操作修改 excel 檔方法的庫。xlutils 庫也僅僅是通過複製一個副本進行操作後保存一個新檔,xlutils 庫就像是 xlrd 庫和 xlwt 庫之間的一座橋樑,因此,xlutils 庫是依賴於 xlrd xlwt 兩個庫的。

 

// 
6.xlsxwriter

官網:

https://xlsxwriter.readthedocs.io/

 

特點:xlsxwriter 是用於創建 Excel XLSX 檔的 Python 模組,可用于將文本、數位、公式和超連結寫入 Excel2007 + XLSX 檔中的多個工作表。它支援格式化等功能。可以說除了 Excel 本身,就屬這個功能最齊全了。

 

// 
7.pandas

官網:

https://www.pypandas.cn/docs/

 

特點:pandas 是基於 NumPy 的一種工具,該工具是為了解決資料分析任務而創建的。Pandas 納入了大量庫和一些標準的資料模型,提供了高效地操作大型資料集所需的工具。

 

// 
8.Marmir

官網:

https://github.com/brianray/mm

 

特點:Marmir 採用 Python 資料結構並將其轉換為試算表。它是類固醇上的 xlwt google 試算表。目標是使用最少的配置輕鬆生成多種類型的有用表檔。

 

 

Python Word自動化庫

 

 

// 
9.python-docx

官網:

https://python-docx.readthedocs.io/en/latest/

 

特點:python-docx 是一個用於創建和更新 Microsoft Word (.docx) 文件的 Python 庫。快速開始、處理文檔、處理文本、使用截面、使用頁眉和頁腳、API基礎理、解樣式、使用樣式理解圖片和其他形狀。只對 windows 平臺有效。

 

// 
10.textract

官網:

https://gitee.com/mirrors/textract

 

特點:它同時兼顧 “doc” “docx”,但安裝過程需要一些依賴。你可以批量的用 python 生成 word 檔,推薦使用 docx,不需要會太多。

 

 

Python PPT自動化庫

 

 

// 
11.python-pptx

官網:

https://python-pptx.readthedocs.io

 

特點:python-pptx 是一個用於創建和更新 PowerPoint (.pptx) 文件的 Python 庫。典型用途是從資料庫內容生成自訂 PowerPoint 演示文稿,可通過按一下 Web 應用程式中的連結下載。

 

 

Python ODF自動化庫

 

 

// 
12.Relatorio

官網:

https://pypi.org/project/relatorio/

 

特點:Relatorio 是一個範本庫,它提供了一種輕鬆輸出多種檔(odtodspngsvg 等)的方法。通過為它們創建外掛程式可以輕鬆添加對更多檔案類型的支持。Relatorio 還提供了一個報告存儲庫,允許您將 python 物件和報告連結在一起,按 mimetype/name/python 對象查找報告。ODF:開放文檔格式(外文名:OpenDocument Format,外語簡稱:ODF)是一種規範,基於 XML(標準通用標記語言的子集)的檔案格式,因應試算表、圖表、演示稿和文字處理檔等電子檔而設置。

 

 

Python PDF自動化庫

 

 

// 
13.PyPDF2

官網:

https://github.com/mstamy2/PyPDF2

 

特點:PyPDF2 是一個純 Python PDF 庫,能夠拆分、合併、裁剪和轉換 PDF 檔的頁面。它還可以向 PDF 檔添加自訂資料、查看選項和密碼。它可以從 PDF 中檢索文本和中繼資料,也可以將整個檔合併在一起。

 

// 
14.ReportLab

官網:

https://www.reportlab.com/opensource/

 

特點:ReportLab 是久經考驗、超強大的開源引擎,用於創建複雜的、資料驅動的 PDF 文檔和自訂向量圖形。它是免費的、開源的,並且是用 Python 編寫的。

 

// 
15.PDFminer

官網:

https://github.com/euske/pdfminer

 

特點:PDFMiner 是一款用於 PDF 文檔的文本提取工具。

 

 

Python 郵件自動化庫

 

 

// 
16.Django Celery SES

官網:

https://github.com/StreetVoice/django-celery-ses

 

特點:這個包提供了一個 EmailBackend 來利用 django-celery 發送電子郵件。您可以將 EmailBackend 插入您的項目中,而無需對代碼進行任何修改。

 

// 
17.Envelopes

官網:

http://tomekwojcik.github.io/envelopes/

 

特點:Envelopes Python 的電子郵件和 smtplib 模組的包裝器。它旨在使在 Python 中處理外發電子郵件變得簡單而有趣。

 

// 
18.Flanker

官網:

https://github.com/mailgun/flanker

 

特點:由 mailgun 開源的 Flanker – email address and MIME
parsing for Python
是一個解析高效、容錯率不錯的 python 協力廠商擴展庫。python
3
也可以正常使用,該庫包含了郵寄地址解析和郵件 mime 格式解析。

 

// 
19.imbox

官網:

https://github.com/martinrusev/imbox

 

特點:用於讀取 IMAP 郵箱並將電子郵件內容轉換為機器可讀數據的 Python

 

// 
20.inbox.py

官網:

https://github.com/billzhong/inbox.py

 

特點:這是您見過的最簡單的 SMTP 伺服器。它是非同步的。一個實例每秒應該處理一千多封電子郵件。

 

// 
21.sync-engine

官網:

https://github.com/nylas/sync-engine

 

特點:Nylas 同步引擎在強大的電子郵件同步平臺之上提供了一個 RESTful API,可以輕鬆地在電子郵件之上構建應用程式。

 

// 
22.Lamson

官網:

https://github.com/zedshaw/lamson

 

特點:Lamson 是一個純 Python SMTP 伺服器,旨在以現代 Web 框架(如 Django)的風格創建強大而複雜的郵件應用程式。

 

// 
23.Marrow Mailer

官網:

https://github.com/marrow/mailer

 

特點:Marrow Mailer 是一個 Python 庫,可以輕鬆地從您的應用程式發送電子郵件。通過使用 Marrow Mailer,您可以:輕鬆構建純文字和 HTML 電子郵件;提高電子郵件傳遞的可測試性;使用不同的郵件投遞管理策略;例如立即,延遲,甚至多伺服器等。

 

// 
24.Modoboa

官網:

https://github.com/modoboa/modoboa

 

特點:Modoboa 是一個郵件託管和管理平臺,包括一個現代和簡化的 Web 使用者介面。它提供了有用的元件,例如管理面板或網路郵件。

 

// 
25.smtplib

官網:

https://docs.python.org/zh-cn/3/library/smtplib.html

 

特點:smtplib 模組是 python smtp (簡單郵件傳輸協議) 的用戶端實現。我們可以使用 smtplib 模組,輕鬆的發送電子郵件。

 

 

Python 微信自動化庫

 

 

// 
26.Python wxpy

官網:

https://wxpy.readthedocs.io/zh/latest/

 

特點:微信機器人/可能是最優雅的微信個人號APIwxpy itchat 的基礎上,通過大量介面優化提升了模組的易用性,並進行豐富的功能擴展。

 

 

Python 檔處理自動化庫

 

 

// 
27.os

官網:

https://docs.python.org/zh-cn/3/library/os.html?highlight=os#module-os

 

特點:本模組提供了一種使用與作業系統相關的功能的便捷式途徑。如果你只是想讀寫一個檔,請參閱 open(),如果你想操作檔路徑,請參閱 os.path 模組,如果你想讀取通過命令列給出的所有檔中的所有行,請參閱 fileinput 模組。為了創建暫存檔案和目錄,請參閱 tempfile 模組,對於高級檔和目錄處理,請參閱 shutil 模組。

 

 

Python 綜合功能自動化庫

 

 

// 
28.win32com

官網:

https://pypi.org/project/pywin32/

 

特點:win32com 模組主要為 Python 提供調用 windows 底層元件對 word ExcelPPT 等進行操作的功能,只能在 Windows 環境下使用,並且需要安裝 office 相關軟體才行(WPS 也行)。

 

// 
29.unoconv

官網:

https://github.com/unoconv/unoconv

 

特點:是一個命令列工具,可以將 LibreOffice 可以導入的任何文檔格式轉換為 LibreOffice 可以匯出的任何文檔格式。它利用 LibreOffice UNO 綁定進行文檔的非互動式轉換,也支持 OpenOffice

 

// 
30.Tablib

官網:

https://www.osgeo.cn/tablib/

 

特點:Python tablib 模組是協力廠商模組,主要作用是將資料匯出為各種不同的格式,包括 exceljsonhtmlyamlcsvtsv 等格式,怎麼樣,有點心動了吧,當然這個模組使用起來也是超級簡單的。

 

// 
31.SnowNLP

官網:

https://github.com/isnowfy/snownlp

 

特點:SnowNLP 是一個 python 寫的類庫,可以方便的處理中文文本內容,是受到了 TextBlob 的啟發而寫的,由於現在大部分的自然語言處理庫基本都是針對英文的,於是寫了一個方便處理中文的類庫,並且和 TextBlob 不同的是,這裡沒有用 NLTK,所有的演算法都是自己實現的,並且自帶了一些訓練好的字典。注意本程式都是處理的 unicode 編碼,所以使用時請自行 decode unicode

 

// 
32.TextBlob

官網:

https://textblob.readthedocs.io

 

特點:TextBlob 是一個用於處理文本資料的 Python2 3)庫。它提供了一個簡單的 API,用於深入研究常見的自然語言處理 (NLP) 任務,例如詞性標注、名詞短語提取、情感分析、分類、翻譯等。

 

// 
33.TextGrocery

官網:

https://textgrocery.readthedocs.io

 

特點:TextGrocery 是一個基於 LibLinear 和結巴分詞的短文本分類工具,特點是高效易用,同時支援中文和英文語料。

 

// 
34.NumPy

官網:

https://www.numpy.org.cn/

 

特點:NumPy Python 中科學計算的基礎包。它是一個 Python 庫,提供多維陣列物件,各種派生物件(如遮罩陣列和矩陣),以及用於陣列快速操作的各種 API,有包括數學、邏輯、形狀操作、排序、選擇、輸入輸出、離散傅立葉轉換、基本線性代數,基本統計運算和隨機模擬等等。

One thought on “超實用!整理了34個Python自動化辦公庫!

  1. 一文瞭解30+Python自動化辦公工具庫

    資料來源: https://mp.weixin.qq.com/s/U1Cnqp5yYTVUFzE9qK_xMQ

    辦公自動化是Python的一大應用方向,也是很多小夥伴學習Python的目的。今天就給大家分享一份Python辦公自動化庫的清單。

    本次內容涵蓋了Excel、Word、PPT、ODF、PDF、郵件、微信、檔處理等所有能在辦公場景實現自動化的庫,希望能夠對大家有所幫助。

    Python

    Excel自動化庫

    // 1.xlwings 庫
    官網:
    https://www.xlwings.org/

    特點:xlwings 是開源且免費的,預裝了 Anaconda 和 WinPython,可在 Windows 和 macOS 上運行。通過 Python 腳本或 Jupyter notebook 自動化 Excel,通過宏從 Excel 調用 Python,並編寫使用者定義的函數(UDF 僅適用於 Windows)

    // 2.openpyxl 庫
    官網:
    https://openpyxl.readthedocs.io

    特點:openpyxl 是一個用於讀取 / 編寫 Excel 2010 xlsx/xlsm/xltx/xltm 檔的 Python 庫。它是由於缺乏從 Python 中讀取 / 編寫 Office Open XML 格式的現有庫而誕生的。

    // 3.xlrd 庫
    官網:
    https://pypi.python.org/pypi/xlrd

    特點:在 python 中,xlrd 庫是一個很常用的讀取 excel 檔的庫,其對 excel 檔的讀取可以實現比較精細的控制。

    // 4.xlwt 庫
    官網:
    https://pypi.org/project/xlwt/

    特點:類比於 xlrd 的 reader,那麼 xlwt 就相對於 writer,而且很純正的一點就是它只能對 Excel 進行寫操作。xlwt 和 xlrd 不光名字像,連很多函數和操作格式也是完全相同。

    // 5.xlutils 庫
    官網:
    https://pypi.org/project/xlutils/

    特點:xlutils(excel utilities)是一個提供了許多操作修改 excel 檔方法的庫。xlutils 庫也僅僅是通過複製一個副本進行操作後保存一個新檔,xlutils 庫就像是 xlrd 庫和 xlwt 庫之間的一座橋樑,因此,xlutils 庫是依賴於 xlrd 和 xlwt 兩個庫的。

    // 6.xlsxwriter 庫
    官網:
    https://xlsxwriter.readthedocs.io/

    特點:xlsxwriter 是用於創建 Excel XLSX 檔的 Python 模組,可用于將文本、數位、公式和超連結寫入 Excel2007 + XLSX 檔中的多個工作表。它支援格式化等功能。可以說除了 Excel 本身,就屬這個功能最齊全了。

    // 7.pandas 庫
    官網:
    https://www.pypandas.cn/docs/

    特點:pandas 是基於 NumPy 的一種工具,該工具是為了解決資料分析任務而創建的。Pandas 納入了大量庫和一些標準的資料模型,提供了高效地操作大型資料集所需的工具。

    // 8.Marmir 庫
    官網:
    https://github.com/brianray/mm

    特點:Marmir 採用 Python 資料結構並將其轉換為試算表。它是類固醇上的 xlwt 和 google 試算表。目標是使用最少的配置輕鬆生成多種類型的有用表檔。

    Python

    Word自動化庫

    // 9.python-docx 庫
    官網:
    https://python-docx.readthedocs.io/en/latest/

    特點:python-docx 是一個用於創建和更新 Microsoft Word (.docx) 文件的 Python 庫。快速開始、處理文檔、處理文本、使用截面、使用頁眉和頁腳、API基礎理、解樣式、使用樣式理解圖片和其他形狀。只對 windows 平臺有效。

    // 10.textract 庫
    官網:
    https://gitee.com/mirrors/textract

    特點:它同時兼顧 “doc” 和 “docx”,但安裝過程需要一些依賴。你可以批量的用 python 生成 word 檔,推薦使用 docx,不需要會太多。

    Python

    PPT自動化庫

    // 11.python-pptx 庫
    官網:
    https://python-pptx.readthedocs.io

    特點:python-pptx 是一個用於創建和更新 PowerPoint (.pptx) 文件的 Python 庫。典型用途是從資料庫內容生成自訂 PowerPoint 演示文稿,可通過按一下 Web 應用程式中的連結下載。

    Python

    ODF自動化庫

    // 12.Relatorio 庫
    官網:
    https://pypi.org/project/relatorio/

    特點:Relatorio 是一個範本庫,它提供了一種輕鬆輸出多種檔(odt、ods、png、svg 等)的方法。通過為它們創建外掛程式可以輕鬆添加對更多檔案類型的支持。Relatorio 還提供了一個報告存儲庫,允許您將 python 物件和報告連結在一起,按 mimetype/name/python 對象查找報告。ODF:開放文檔格式(外文名:OpenDocument Format,外語簡稱:ODF)是一種規範,基於 XML(標準通用標記語言的子集)的檔案格式,因應試算表、圖表、演示稿和文字處理檔等電子檔而設置。

    Python

    PDF自動化庫

    // 13.PyPDF2 庫
    官網:
    https://github.com/mstamy2/PyPDF2

    特點:PyPDF2 是一個純 Python PDF 庫,能夠拆分、合併、裁剪和轉換 PDF 檔的頁面。它還可以向 PDF 檔添加自訂資料、查看選項和密碼。它可以從 PDF 中檢索文本和中繼資料,也可以將整個檔合併在一起。

    // 14.ReportLab 庫
    官網:
    https://www.reportlab.com/opensource/

    特點:ReportLab 是久經考驗、超強大的開源引擎,用於創建複雜的、資料驅動的 PDF 文檔和自訂向量圖形。它是免費的、開源的,並且是用 Python 編寫的。

    // 15.PDFminer 庫
    官網:
    https://github.com/euske/pdfminer

    特點:PDFMiner 是一款用於 PDF 文檔的文本提取工具。

    Python

    郵件自動化庫

    // 16.Django Celery SES 庫
    官網:
    https://github.com/StreetVoice/django-celery-ses

    特點:這個包提供了一個 EmailBackend 來利用 django-celery 發送電子郵件。您可以將 EmailBackend 插入您的項目中,而無需對代碼進行任何修改。

    // 17.Envelopes 庫
    官網:
    http://tomekwojcik.github.io/envelopes/

    特點:Envelopes 是 Python 的電子郵件和 smtplib 模組的包裝器。它旨在使在 Python 中處理外發電子郵件變得簡單而有趣。

    // 18.Flanker 庫
    官網:
    https://github.com/mailgun/flanker

    特點:由 mailgun 開源的 Flanker – email address and MIME parsing for Python 是一個解析高效、容錯率不錯的 python 協力廠商擴展庫。python 3 也可以正常使用,該庫包含了郵寄地址解析和郵件 mime 格式解析。

    // 19.imbox 庫
    官網:
    https://github.com/martinrusev/imbox

    特點:用於讀取 IMAP 郵箱並將電子郵件內容轉換為機器可讀數據的 Python 庫

    // 20.inbox.py 庫
    官網:
    https://github.com/billzhong/inbox.py

    特點:這是您見過的最簡單的 SMTP 伺服器。它是非同步的。一個實例每秒應該處理一千多封電子郵件。

    // 21.sync-engine 庫
    官網:
    https://github.com/nylas/sync-engine

    特點:Nylas 同步引擎在強大的電子郵件同步平臺之上提供了一個 RESTful API,可以輕鬆地在電子郵件之上構建應用程式。

    // 22.Lamson 庫
    官網:
    https://github.com/zedshaw/lamson

    特點:Lamson 是一個純 Python SMTP 伺服器,旨在以現代 Web 框架(如 Django)的風格創建強大而複雜的郵件應用程式。

    // 23.Marrow Mailer 庫
    官網:
    https://github.com/marrow/mailer

    特點:Marrow Mailer 是一個 Python 庫,可以輕鬆地從您的應用程式發送電子郵件。通過使用 Marrow Mailer,您可以:輕鬆構建純文字和 HTML 電子郵件;提高電子郵件傳遞的可測試性;使用不同的郵件投遞管理策略;例如立即,延遲,甚至多伺服器等。

    // 24.Modoboa 庫
    官網:
    https://github.com/modoboa/modoboa

    特點:Modoboa 是一個郵件託管和管理平臺,包括一個現代和簡化的 Web 使用者介面。它提供了有用的元件,例如管理面板或網路郵件。

    // 25.smtplib 庫
    官網:
    https://docs.python.org/zh-cn/3/library/smtplib.html

    特點:smtplib 模組是 python 中 smtp (簡單郵件傳輸協議) 的用戶端實現。我們可以使用 smtplib 模組,輕鬆的發送電子郵件。

    Python

    微信自動化庫

    // 26.Python wxpy 庫
    官網:
    https://wxpy.readthedocs.io/zh/latest/

    特點:微信機器人/可能是最優雅的微信個人號API,wxpy 在 itchat 的基礎上,通過大量介面優化提升了模組的易用性,並進行豐富的功能擴展。

    Python

    檔處理自動化庫

    // 27.os 庫
    官網:
    https://docs.python.org/zh-cn/3/library/os.html?highlight=os#module-os

    特點:本模組提供了一種使用與作業系統相關的功能的便捷式途徑。如果你只是想讀寫一個檔,請參閱 open(),如果你想操作檔路徑,請參閱 os.path 模組,如果你想讀取通過命令列給出的所有檔中的所有行,請參閱 fileinput 模組。為了創建暫存檔案和目錄,請參閱 tempfile 模組,對於高級檔和目錄處理,請參閱 shutil 模組。

    Python

    綜合功能自動化庫

    // 28.win32com 庫
    官網:
    https://pypi.org/project/pywin32/

    特點:win32com 模組主要為 Python 提供調用 windows 底層元件對 word 、Excel、PPT 等進行操作的功能,只能在 Windows 環境下使用,並且需要安裝 office 相關軟體才行(WPS 也行)。

    // 29.unoconv 庫
    官網:
    https://github.com/unoconv/unoconv

    特點:是一個命令列工具,可以將 LibreOffice 可以導入的任何文檔格式轉換為 LibreOffice 可以匯出的任何文檔格式。它利用 LibreOffice 的 UNO 綁定進行文檔的非互動式轉換,也支持 OpenOffice。

    // 30.Tablib 庫
    官網:
    https://www.osgeo.cn/tablib/

    特點:Python tablib 模組是協力廠商模組,主要作用是將資料匯出為各種不同的格式,包括 excel,json,html,yaml,csv,tsv 等格式,怎麼樣,有點心動了吧,當然這個模組使用起來也是超級簡單的。

    // 31.SnowNLP 庫
    官網:
    https://github.com/isnowfy/snownlp

    特點:SnowNLP 是一個 python 寫的類庫,可以方便的處理中文文本內容,是受到了 TextBlob 的啟發而寫的,由於現在大部分的自然語言處理庫基本都是針對英文的,於是寫了一個方便處理中文的類庫,並且和 TextBlob 不同的是,這裡沒有用 NLTK,所有的演算法都是自己實現的,並且自帶了一些訓練好的字典。注意本程式都是處理的 unicode 編碼,所以使用時請自行 decode 成 unicode。

    // 32.TextBlob 庫
    官網:
    https://textblob.readthedocs.io

    特點:TextBlob 是一個用於處理文本資料的 Python(2 和 3)庫。它提供了一個簡單的 API,用於深入研究常見的自然語言處理 (NLP) 任務,例如詞性標注、名詞短語提取、情感分析、分類、翻譯等。

    // 33.TextGrocery 庫
    官網:
    https://textgrocery.readthedocs.io

    特點:TextGrocery 是一個基於 LibLinear 和結巴分詞的短文本分類工具,特點是高效易用,同時支援中文和英文語料。

    // 34.NumPy 庫
    官網:
    https://www.numpy.org.cn/

    特點:NumPy 是 Python 中科學計算的基礎包。它是一個 Python 庫,提供多維陣列物件,各種派生物件(如遮罩陣列和矩陣),以及用於陣列快速操作的各種 API,有包括數學、邏輯、形狀操作、排序、選擇、輸入輸出、離散傅立葉轉換、基本線性代數,基本統計運算和隨機模擬等等。

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *