1. 程式人生 > >你必須知道的10個Python第三庫

你必須知道的10個Python第三庫

1. BeautifulSoup

Beautiful Soup是一個可以從HTML,XML進行提取檔案的Python庫,日常我們使用爬蟲進行資料抓取回來之後,往往需要進行資料解析。

使用它能讓你開心愉快提取裡面的爬回來的資料。

本人對於Python學習建立了一個小小的學習圈子,為各位提供了一個平臺,大家一起來討論學習Python。歡迎各位到來Python學習群:960410445一起討論視訊分享學習。Python是未來的發展方向,正在挑戰我們的分析能力及對世界的認知方式,因此,我們與時俱進,迎接變化,並不斷的成長,掌握Python核心技術,才是掌握真正的價值所在。

2. Arrow

用過datetime標準庫的同學都知道,這個庫每次需要import各種時間模組格式化,非常不友好,arrow直接接受各種時間(datetime,date,timestamp)型別轉化為Arrow型別,然後進行各種格式化操作,非常方便。很是人性化,簡直是居家旅行必備良藥

3. Requests

題圖就是requests的logo,這個庫使用量之大,Python開發者應該是無人不知無人不曉。

requests是日常網路庫使用最頻繁的一個,不管是用於正式還是測試,它完全滿足與日常網路的需求,非常人性化,簡單好用。

requests目前在github有36+的star,除了功能強大,原始碼也是寫的非常贊。五星推薦

4. Fabric

對於少量伺服器,日常自動化釋出配置,與伺服器互動只需要配置一個fabfile.py的自動化指令碼就行,非常簡單方便。如果需要更多配置運維可以使用ansible,這個後期我單獨和大家討論。

5. Statsd

作為一枚開發同學,伺服器API效能,耗時監控是一個很重要的資料,我們需要收集起來進行實時分析。

statsd是一個網路守護程序,通過Python客戶端,我們可以統計監聽API資料傳送到服務端,比如ES,influxdb,promethues,並且用Grafana進行資料展示。

6. Gevent

gevent是基於協程的Python網路庫,通過gevent使的協程的使用變得非常簡單,遇到阻塞你不需要顯示切換,程式會進行自動排程。使用非常廣泛,在部署flask,celery往往會加入gevent提高服務效能。

7. Supervisor

之前文章提到過supervisor可以大大方便我們進行程序管理,開始,重啟,停止,檢視日誌等等。

8. Voluptuous

這個庫估計很多同學不知道,主要是日常寫API的時候進行資料校驗,當前端API傳遞引數過多的時候,這個庫,可以通過裝飾器的方式提前進行校驗資料邏輯,大大降低了你在程式碼邏輯校驗資料的耦合,強烈推薦後端的同學使用。

9. Raven

單純這個名字大家可能不那麼敏感,但是sentry大家肯定就知道了。

這個庫就是sentry服務的SDK包。對於日常郵件報警我們通過安裝了這個包配合sentry後端服務,就能夠進行各種郵件報警的錯誤收集。

另外通過設定日誌等級,我們能輕鬆通過logger進行觸發報警。

這個包適合多個語言,不僅僅是Python語言之下。

10. uWSGI

uWSGI這個是一個web伺服器,它實現了WSGI協議、uwsgi、http等協議,我們在Python日常部署文章提到過,主要通過Nginx + uWSGI 拉動我們應用服務(比如Django)提高服務吞吐量。