陳希章(O365開發指南):Python在Office 365 開發中的應用

  • 2019 年 11 月 29 日
  • 筆記

我在昨天發布的文章 —— 簡明 Python 教程:人生苦短,快用Python —— 中提到了Python已經在Office 365開發中全面受支援,有不同朋友留言或私信說想了解更加詳細的說明,所以特意整理這一篇給大家參考。

我之前寫的《Office 365 開發入門指南》一書,對Office 365開發進行了比較詳細的闡述,有興趣可以參考 《Office 365開發入門指南》上市說明和讀者服務

Microsoft Graph SDK for Python

如果你用Python開發了一個應用程式,希望調用Microsoft Graph來訪問Office 365的數據,例如聯繫人列表,郵件處理,文件分享等。你可以通過下面的地址得到Microsoft Graph SDK,以及程式碼範例。

http://aka.ms/pythongraphsamples

Office 365 Add-ins with Python

Office 365 Add-ins包括Office Add-ins和SharePoint Add-ins,在新的Web Add-ins的這種框架下,Python可以很自然地開發以上兩種組件,因為他們其實都是用一個manifest文件進行定義,然後核心內容都是用一個網站來提供。Python可以很方便地開發網站,所以非常簡單。

這裡有一個Office Add-in 範例 https://github.com/OfficeDev/Groups-API-Office-Add-in-Python-Sample

你可以用任意你喜歡的方式來開發Python 網站,例如在Visual Studio中提供了Python工具套件。

除了上面的這種新型的Web Add-in,Python也可以通過傳統方式與Office 應用程式交互,例如操作Excel,PowerPoint,Word等。請參考下面的介紹。

Python with Excel

有幾個很好的Python模組能夠方便地操作Excel的數據,包括讀與寫,不要求本地安裝Excel。例如pandas, openpyxl, xlrd, xlutils 和 pyexcel. 詳情可以參考下面的介紹:

https://www.datacamp.com/community/tutorials/python-excel-tutorial

Python for Excel

利用xlwings模組,你可以很方便地Python應用程式中操作Excel文件(同時支援xls和xlsx),也可以在Excel中直接調用Python的腳本(通過RunPython函數),還可以使用Python為Excel自定義函數,需要本地安裝Excel。請參考 https://www.xlwings.org/

Python for Word

使用python-docx這個模組,可以很方便地創建和修改Word文檔(不需要本地安裝Word)

https://pypi.org/project/python-docx/

Python for PowerPoint

使用python-pptx這個模組,可以很容易地創建或修改PowerPoint 文檔(不需要本地安裝PowerPoint)。請參考

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

其實還有很多,Python的模組都是開源的,由全世界的程式設計師貢獻並分享,如果遇到什麼需求,可以先用 pip search 命令搜索一下,也許已經有了現成的模組呢。