8 個用於業餘專案的優秀 Python 庫
這些庫可以使你更容易構架個人專案。
在 Python/Django 的世界裡有這樣一個諺語:為語言而來,為社群而留。對絕大多數人來說的確是這樣的,但是,還有一件事情使得我們一直停留在 Python 的世界裡,不願離開,那就是我們可以很容易地利用一頓午餐或晚上幾個小時的時間,把一個想法快速地實現出來。
這個月,我們來探討一些我們喜歡用來快速完成業餘專案或打發午餐時間的 Python 庫。
在資料庫中即時儲存資料:Dataset
當我們想要在不知道最終資料庫表長什麼樣的情況下,快速收集資料並儲存到資料庫中的時候,Dataset 庫將是我們的最佳選擇。Dataset 庫有一個簡單但功能強大的 API,因此我們可以很容易的把資料儲存下來,之後再進行整理。
Dataset 建立在 SQLAlchemy 之上,所以如果需要對它進行擴充套件,你會感到非常熟悉。使用 Django 內建的 inspectdb 管理命令可以很容易地把底層資料庫模型匯入 Django 中,這使得和現有資料庫一同工作不會出現任何障礙。
從網頁抓取資料:Beautiful Soup
Beautiful Soup(一般寫作 BS4)庫使得從 HTML 網頁中提取資訊變得非常簡單。當我們需要把非結構化或弱結構化的 HTML 轉換為結構化資料的時候,就需要使用 Beautiful Soup 。用它來處理 XML 資料也是一個很好的選擇,否則 XML 的可讀性或許會很差。
和 HTTP 內容打交道:Requests
當需要和 HTTP 內容打交道的時候,Requests 毫無疑問是最好的標準庫。當我們想要抓取 HTML 網頁或連線 API 的時候,都離不開 Requests 庫。同時,它也有很好的文件。
編寫命令列工具:Click
當需要寫一個簡單的 Python 指令碼作為命令列工具的時候,Click 是我最喜歡用的庫。它的 API 非常直觀,並且在實現時經過了深思熟慮,我們只需要記住很少的幾個模式。它的文件也很優秀,這使得學習其高階特性更加容易。
對事物命名:Python Slugify
眾所周知,命名是一件困難的事情。Python Slugify 是一個非常有用的庫,它可以把一個標題或描述轉成一個帶有特性的唯一識別符號。如果你正在做一個 Web 專案,並且你想要使用對搜尋引擎最佳化友好的連結,那麼,使用 Python Slugify 可以讓這件事變得很容易。
和外掛打交道:Pluggy
Pluggy 庫相對較新,但是如果你想新增一個外掛系統到現有應用中,那麼使用 Pluggy 是最好也是最簡單的方式。如果你使用過 pytest,那麼實際上相當於已經使用過 Pluggy 了,雖然你還不知道它。
把 CSV 檔案轉換到 API 中:DataSette
DataSette 是一個神奇的工具,它可以很容易地把 CSV 檔案轉換為全特性的只讀 REST JSON API,同時,不要把它和 Dataset 庫混淆。Datasette 有許多特性,包括建立圖表和 geo(用於建立互動式地圖),並且很容易透過容器或第三方網路主機進行部署。
處理環境變數等:Envparse
如果你不想在原始碼中儲存 API 金鑰、資料庫憑證或其他敏感資訊,那麼你便需要解析環境變數,這時候 envparse 是最好的選擇。Envparse 能夠處理環境變數、ENV 檔案、變數型別,甚至還可以進行預處理和後處理(例如,你想要確保變數名總是大寫或小寫的)。
有什麼你最喜歡的用於業餘專案的 Python 庫不在這個列表中嗎?請在評論中和我們分享。
via: https://opensource.com/article/18/9/python-libraries-side-projects
作者:Jeff Triplett 選題:lujun9972 譯者:ucasFL 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出
相關文章
- 如何完成一個優秀的專案
- PMP|優秀專案經理重點修煉的8個能力
- 4個用於構建優秀命令列使用者介面的Python庫命令列Python
- GitHub 上有哪些優秀的 Python 爬蟲專案?GithubPython爬蟲
- python小專案案例-開發Python專案案例,這8個庫不容錯過,功能強大效能優質Python
- 基於.NET Core的優秀開源專案合集
- 推薦幾個優秀的開源的專案
- python爬蟲例項專案大全-GitHub 上有哪些優秀的 Python 爬蟲專案?Python爬蟲Github
- Python的開發必備:如何建立一個優秀的專案工程環境Python
- 8 個用於 Kubernetes 持久化儲存的 CNCF 專案持久化
- 用於數學的 10 個優秀程式語言
- 那些年,優秀的配置檔案庫
- 一個優秀的Android開源框架學習專案ForgetSkyWanAndroidAndroid框架NaN
- 12個的優秀的人工智慧開源專案利器人工智慧
- Android專案中最火最常用的優秀開源專案Android
- GitHub上有哪些優秀的爬蟲專案?Github爬蟲
- GitHub 上優秀的 Go 開源專案GithubGo
- GitHub上優秀的Go開源專案GithubGo
- 優秀的 Spring Boot 語言開源專案Spring Boot
- Go優秀開源專案推薦Go
- 從一個優秀開源專案來談前端架構前端架構
- Manjaro Linux 從業餘愛好專案成長為專業專案JARLinux
- 如何將 Scikit-learn Python 庫用於資料科學專案Python資料科學
- 快速開發android,離不開這10個優秀的開源專案Android
- 優秀的專案管理應具備哪些條件?專案管理
- 關於 fontawesome 庫在 Spartacus 專案中的應用
- 七個基於 Fedora Linux 的優秀髮行版Linux
- 業餘專案,尋 Laravel 大牛,2年以上經驗,開發個專案,股份好說。Laravel
- 推薦幾款優秀的專案報表軟體
- Google Flutter Clock 大賽優秀專案推薦GoFlutter
- 六個用於大資料分析的Python庫包大資料Python
- 8個關於Python的小技巧Python
- 2024年最優秀的10款專案管理工具,專案經理必看!專案管理
- 85%的專案經理推薦:最優秀的7大專案管理軟體盤點!專案管理
- 3 個用於資料科學的頂級 Python 庫資料科學Python
- 【3月更新】React Native 優秀開源專案大全React Native
- 優秀的檔案解包工具
- 【譯】關於React Native在專業用於多種規模專案後的思考React Native