你必須知道的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)提高服務吞吐量。