可愛的python測試開發庫(python測試開發工具庫彙總)
歡迎轉載,轉載請註明來源:
Python測試開發庫
參考資料
https://github.com/vinta/awesome-python
https://github.com/atinfo/awesome-test-automation
https://westurner.github.io/wiki/awesome-python-testing
交流QQ群:python 測試開發自動化測試 144081101 Python資料分析pandas Excel 630011153 中醫草藥自學自救大資料 391441566 南方中醫草藥鑑別學習 184175668 中醫草藥溼熱溼疹胃病 291184506 python高階人工智慧視覺 6089740
wechat: pythontesting
測試開發
Web UI測試自動化
-
splinter - web UI測試工具,基於selnium封裝。 連結
-
mechanize- Python中有狀態的程式化Web瀏覽。連結
-
selene - 使用Python + Ajax支援+ PageObjects + Widgets進行簡明UI測試 連結
-
hitch - 基於服務的應用程式的高階整合測試框架。連結
-
Needle - Css 自動化測試框架。連結
-
seleniumbase - 端到端自動化測試框架。連結
-
pytest_splinter - pytest spinter和selenium整合。 連結
-
Browsermob Proxy - Browsermob Proxy的python包裝器。 連結
-
Selenium-Requests - 擴充套件Selenium WebDriver類以包含請求庫中的請求函式,同時完成所有需要的cookie和請求頭處理。連結
移動測試自動化
-
appium - 移動端UI自動化測試。 連結 --推薦
-
uiautomator- 安卓UI自動化測試。
-
ATX - 智慧手機自動化工具。支援iOS,Android,WebApp和遊戲。 網易出品 連結 --推薦
-
uiautomator2- Android Uiautomator2 Python Wrapper。 連結 --推薦
-
facebook-wda Facebook WebDriverAgent Python Client Library (not official) 可用於IOS應用測試。 連結 --推薦
Windows UI測試自動化
-
Winium.Desktop - 開源測試自動化工具,用於基於WinForms和WPF平臺自動測試Windows應用程式,基於Selenium遠端WebDriver實現。 連結
-
pyautogui- 跨平臺的UI自動化工具,控制滑鼠和鍵盤。 連結
-
autopy - 簡單的跨平臺GUI自動化工具包,適用於Python。 連結
-
pywinauto - Windows UI自動化。 連結
-
SikuliX - 基於OpenCV的GUI測試框架,使用影象識別來定位與之間的專案,來自python 2.7的指令碼,跨平臺。連結
UI測試
-
pyautoacad - AutoCAD自動化。 連結
-
sikuli - 點陣圖自動化。 連結
-
monkeyrunner- 安卓自動化。 連結
-
ldtp - Linux UI自動化。 連結
-
dogtail- Linux UI自動化。 連結
-
pyautoit- autoit python api。 連結
-
雪峰磁針石說明:
autopy、WATSUP、winGuiAuto因為較長時間未更新未收錄
效能測試
軟體測試專家工具包2效能測試 https://china-testing.github.io/testing_tools_perf.html
-
funkload - 效能及功能測試工具。 連結 --推薦
-
Locust.io – 瞭解伺服器端效能的好工具。 語言python3。原始碼 python3+ python2.7+ github上star和fork最多的效能測試工具。 --強烈推薦
-
Bees with Machine Guns – 進行負載測試的蜜蜂(微型EC2例項)。 語言python3+ python2.6+ --強烈推薦
-
Multi-Mechanize – 用於效能和負載測試的開源框架,它執行併發Python指令碼以生成針對遠端站點或服務的負載(複合事務)。它通常用於Web效能和擴充套件性測試,但您也可以使用Multi-Mechanize來測試任何遠端API。 --基於python多程序和多執行緒實現,學習自行開發效能測試的佳品。 Python 2.6 or 2.7 較長時間沒有更新,一般只建議改造使用。
-
ngrinder - 市面上最強大的效能測試工具之一,主要用jython書寫指令碼,效能在loadrunner和jmeter之上,擴充套件性好。 連結 --強烈推薦
-
boom - 類似ab(ApacheBench)的效能測試工具。 連結
測試框架
-
pyresttest 介面測試框架 -- 推薦
-
HttpRunner HTTP介面測試框架 -- 推薦
-
augmented-traffic-control facebook開發的最強悍弱網網路模擬工具 --強烈推薦
-
Hypothesis - 高階單元測試測試框架,支援行為驅動,基於property 。 連結 -- 推薦
-
unittest - (Python 標準庫) 單元測試框架 連結 -- 推薦
-
mamba - 行為驅動測試框架。 連結
-
nose- 更好的單元測試框架。 連結 -- 推薦
-
nose2- nose基於unittest2的版本。 連結
-
testify - 單元測試框架,提供增強的測試fixture設定,將測試套件拆分成易於並行化的儲存bucket,PEP8命名約定,帶有大量日誌/報告選項及顏色測試執行器。連結
-
trial - Twisted的單元測試框架,基於unittest。連結
-
Robot Framework- 通用的python測試框架,易於上手,生成的報告比較好看,適合小型公司使用,支援關鍵字和資料等驅動,系業界內很出名的框架。不過因為寫用例不能很靈活的應用python,需要大量的python封裝,大公司通常使用pytest,django,flask之類的庫自行開發。 連結
-
green- 彩色(命令列能顯示多種顏色)的單元測試框架。 連結
-
tox- 基於virtualenv的測試框架,主要用於解決多版本python問題。 連結
-
sixpack- A/B 測試框架。 連結
-
lettuce- 行為驅動 測試框架。 連結
-
pyccuracy- 行為驅動 web驗收測試框架。 連結
-
pytest-bdd- 基於pytest的行為驅動 測試框架。 連結
-
ddt- 資料驅動測試。 連結
-
behave- 行為驅動測試。 連結
-
lettuce- 行為驅動測試。 連結
-
mamba - Python的測試定義工具,基於行為驅動。連結
-
pyvows - Python的非同步行為驅動開發,Vows.js的python移植。連結
-
pyhamcrest - Python的Hamcrest匹配器。 連結
-
sure - 強大而靈活的斷言python測試庫。連結
-
factory_boy - 基於thinkbot的factory_girl的fixture替代。連結
Mock
-
doublex:強大的測試樁框架。連結
-
mock:(Python3 標準庫) mock和patch。連結
-
freezegun:偽造時間。[連結]https://github.com/spulec/freezegun)
-
httmock:Python 2.7+ 和 3.4+ mock requests庫。連結
-
httpretty:Python 的 HTTP 請求 客戶端mock 工具,暫時不支援python3。連結
-
responses:針對requests 庫的mock庫。連結
-
VCR.py:錄製HTTP請求加快測試執行速度並可進行mock。連結 -- 推薦
-
factoryboy:Python測試fixtures(setup和teardown)替代庫。連結
-
mixer:另外一個測試fixtures(setup和teardown)替代庫,支援 Django, Flask, SQLAlchemy, Peewee 等。連結
-
modelmommy:為 Django測試建立隨機fixtures 連結
-
faker:生成多種偽資料。連結
-
fake2db:偽造資料庫生成器。連結
-
mimesis:生成mock資料。[連結]https://github.com/lk-geimfari/mimesis)
-
雪峰磁針石說明:
radar 因為github星級太少而未收錄 最近版本參見原文:https://github.com/china-testing/python-api-tesing
其他測試工具
-
coverage:程式碼覆蓋率。連結
-
FuckIt.py:程式碼出錯也可以執行。連結
-
RoboBrowser:一個簡單的,Python 風格的庫,用來瀏覽網站,而不需要一個獨立安裝的瀏覽器。連結
-
MechanicalSoup:用於自動和網路站點互動的 Python 庫。連結
-
augmented-traffic-control:網路模擬工具。連結 -- 強烈推薦
持續交付
-
buildbot - google等公司使用的持續整合框架,上手比Jenkins難,功能和效能遠比Jenkins強大。 連結 python庫介紹-buildbot教程
-
BitBake – 嵌入式Linux上類似make工具。連結
-
buildout – 用於從多個部分建立,組裝和部署應用程式的構建系統。連結
-
PlatformIO – 在不同的開發平臺的控制檯構建工具。連結
-
PyBuilder – 純Python編寫的持續構建工具。連結
-
SCons – 軟體構建工具。連結
測試工具對接
- jira –自動化JIRA。連結
awesome-python
管理面板(Admin Panels)
-
Ajenti - Linux & BSD web管理面板。管理程序和檔案等。 連結
-
django-suit - 現代主題的Django管理介面(僅限非商業用途)。連結
-
django-xadmin - 方便的Django admin替代。 完全支援外掛擴充套件,基於 Twitter Bootstrap,並有站內書籤、支援 xls, csv, xml和json資料匯入等不少增強。 連結
-
flask-admin - Flask的簡單和可擴充套件的 web 管理介面框架。 連結
-
flower - Celery的實時監控和網路。 連結
-
Grappelli - Django管理介面的爵士面板。[連結]https://github.com/sehmaschine/django-grappelli)
-
Wooey - 為Python指令碼建立自動Web UI的Django應用程式。 連結
演算法和設計模式(Algorithms and Design Patterns)
Python的演算法和設計模式的實現。
-
algorithms - Python的演算法模組。 連結
-
PyPattyrn - 簡單有效實現通用設計模式。 連結
-
python-patterns - Python中設計模式的集合。 連結
-
sortedcontainers - SortedList,SortedDict和SortedSet型別的快速,純Python實現。 連結
反病毒(Anti-spam)
-
django-simple-captcha - 簡單且高度可定製的Django應用,可以將驗證碼影象新增到任何Django表單。 連結
-
雪峰磁針石說明:
django-simple-spam-blocker因為github星級太少而未收錄 最近版本參見原文:https://github.com/china-testing/python-api-tesing
資產管理(Asset Management)
用於管理,壓縮和縮小網站資產的工具。
-
django-compressor - 將連結和內聯的JavaScript或CSS壓縮到單個快取檔案中。 連結
-
django-pipeline - Django的資產包裝庫。 連結
-
django-storages - Django自定義儲存後端集。 連結
-
fanstatic - 用 Python 的包的方式封裝,優化靜態檔案並解依賴。 連結
-
fileconveyor - 檢測和同步檔案到CDN,S3和FTP的後臺程式。 連結
-
flask-assets - 整合web 資源到Flask應用。 連結
-
jinja-assets-compressor - Jinja擴充套件程式,用於編譯和壓縮資源。 連結 -- github星級不到100.
-
webassets - 為靜態資源打包,優化和管理基於快取的唯一URL。 連結
音訊(Audio)
操作音訊的庫。
-
audiolazy - 數字訊號處理(DSP)軟體包。 連結
-
audioread - 跨庫(GStreamer +Core Audio+ MAD + FFmpeg)音訊解碼。連結
-
beets - 音樂庫管理和MusicBrainzb標籤。連結 -- 推薦
-
dejavu - 音訊指紋識別。連結 -- 推薦
-
id3reader - 用於讀取MP3元資料的Python模組。連結
-
m3u8 - 解析m3u8檔案的模組。連結
-
mingus - 先進的音樂理論和MIDI檔案和播放支援符號包。連結
-
mutagen - 用於處理音訊元資料的Python模組。連結
-
pyAudioAnalysis - Python音訊分析庫:特徵提取,分類,分割和應用。連結 -- 推薦
-
pydub - 通過簡單易用的高階介面處理音訊。連結 -- 推薦
-
pyechonest - Echo Nest API的Python客戶端。連結
-
talkbox - 用於語音/訊號處理的Python庫。連結
-
TimeSide - 開放的Web音訊處理框架。連結
-
tinytag - 用於讀取MP3,OGG,FLAC和Wave檔案的音樂元資料的庫。連結
-
雪峰磁針石說明:
django-elastic-transcoder, eyeD3 因為github星級太少而未收錄
scikits.talkbox 因長時間未更新未收錄 最近版本參見原文:https://github.com/china-testing/python-api-tesing
認證(Authentication)
-
Authomatic:簡單但是強大的框架,身份驗證/授權客戶端。連結
-
django-allauth:Django 的驗證應用。連結
-
django-oauth-toolkit: Django OAuth2。連結
-
django-oauth2-provider:Django OAuth2。連結
-
Flask-OAuthlib: Flask OAuthlib 。連結
-
OAuthLib: 通用完整的實現OAuth請求-簽名邏輯。連結
-
python-oauth2:建立 OAuth 客戶端和服務端完全測試的抽象介面。連結
-
python-social-auth:設定簡單的社交認證。連結
-
rauth:OAuth 1.0/a, 2.0, 和 Ofly。連結
-
sanction:一個超級簡單的OAuth2 客戶端實現。連結
-
PyJWT:JSON Web 令牌草案 01。連結
-
python-jwt:生成和驗證 JSON Web 令牌。連結
-
雪峰磁針石說明:
jose,python-jws因為github星級太少而未收錄
scikits.talkbox 因長時間未更新未收錄
內建類增強(Built-in Classes Enhancement)
區塊鏈(Blockchain)
- blockchain - 簡單的區塊鏈。
- bidict - 高效的雙向字典。
- Box - 點符號訪問的Python字典
CMS(Content Management Systems)
內容管理系統
-
django-cms:開源的,基於Django的企業級 CMS。連結
-
djedi-cms:輕量級但卻非常強大的 Django CMS ,考慮到了外掛,內聯編輯以及效能。[連結]http://djedi-cms.org/)
-
FeinCMS:基於 Django 構建的最先進的內容管理系統之一。連結
-
Kotti:高層的的web應用框架,基於 Pyramid 構建。連結
-
Mezzanine:強大的,一致的,靈活的內容管理平臺。連結 -- 推薦
-
Opps:雜誌,報紙網站以及大流量入口網站設計的 CMS 平臺,基於 Django。[連結]https://github.com/opps/opps)
-
Plone:構建於開源應用伺服器 Zope 之上的 CMS。連結
-
Quokka:靈活,可擴充套件的小型 CMS,基於 Flask 和 MongoDB。連結
-
Wagtail:Django 內容管理系統。連結 -- 推薦
-
Widgy: CMS 框架,基於 Django。連結
快取(Caching)
快取資料的庫。
-
Beaker:快取和會話庫,可以用在 web 應用和獨立 Python指令碼和應用上。連結
-
DiskCache:Python磁碟快取(Django相容)。。連結
-
django-cache-machine:Django 模型的自動快取和失效。連結
-
django-cacheops:具有自動顆粒化事件驅動失效功能的 ORM。連結
-
dogpile.cache:dogpile.cache 是 Beaker 的替代,由同一作者開發。連結
-
HermesCache:Python 快取庫,具有基於標籤的失效和 dogpile effect 保護功能。連結
-
johnny-cache:django應用快取框架。[連結]https://github.com/jmoiron/johnny-cache)
-
pylibmc:libmemcached 介面的 Python 封裝。連結
-
雪峰磁針石說明:
django-viewlet因為github星級太少而未收錄
自動聊天工具(ChatOps Tools)
- Errbot:最簡單和最流行的聊天機器人用來實現自動聊天工具。連結
程式碼分析和lint(Code Analysis)
-
coala:語言獨立和易於擴充套件的程式碼分析應用程式。連結
-
code2flow:把你的 Python 和 JavaScript 程式碼轉換為流程圖。暫時無法繼續維護。連結
-
pycallgraph:這個庫可以把你的Python 應用的流程(呼叫圖)進行視覺化。連結
-
Flake8:模組化原始碼檢查工具: pep8, pyflakes 以及 co。連結
-
Pylint:一個完全可定製的原始碼分析器。連結
-
pylama:python程式碼審計。連結
-
YAPF: Google的Python程式碼格式化工具。連結 --推薦
-
pylama:Python 和 JavaScript 的程式碼審查工具。連結
-
autopep8:自動格式化 Python 程式碼,以使其符合 PEP8 規範。連結 --推薦
-
mypy :靜態型別檢查。連結 --推薦
-
pep8 :python風格檢查。連結 --推薦
-
prospector - 分析Python程式碼並輸出有關錯誤,潛在問題,違反常規和複雜性的資訊的工具。連結
命令列工具(Command-line Tools)
命令列程式開發( Command-line Application Development)
-
asciimatics:跨平臺,全屏終端包(即滑鼠/鍵盤輸入和彩色,定位文字輸出),完整的複雜動畫和特殊效果的高階API。連結
-
cement:Python 的命令列程式框架。連結
-
click:一個通過組合的方式來建立精美命令列介面的包。連結 --推薦
-
cliff:一個用於建立命令列程式的框架,可以建立具有多層命令的命令列程式。連結
-
clint:Python 命令列程式工具。連結
-
colorama:跨平臺彩色終端文字。連結
-
docopt:Python 風格的命令列引數解析器。連結 --推薦
-
Gooey:一條命令,將命令列程式變成一個 GUI 程式。連結
-
Python-Fire:將命令列程式變成一個 GUI 程式。連結 --推薦
-
python-prompt-toolkit:構建強大的互動式命令列程式的庫。連結 --推薦
-
Pythonpy:在命令列中直接執行任何Python指令。連結
生產力工具(Productivity Tools)
-
aws-cli:Amazon Web Services 的通用命令列介面。連結
-
bashplotlib:在終端中進行基本繪圖。連結
-
caniusepython3:判斷是哪個專案妨礙你你移植到 Python 3。連結
-
cookiecutter:從 cookiecutters(專案模板)建立專案的一個命令列工具。連結
-
doitlive:一個用來在終端中進行現場演示的工具。連結
-
howdoi:通過命令列獲取即時的程式設計問題解答。連結 --推薦
-
httpie:命令列HTTP 客戶端,cURL 的替代品,易用性更好。連結
-
PathPicker:從bash輸出中選出檔案。連結
-
percol:向UNIX shell 傳統管道概念中加入互動式選擇功能。連結
-
SAWS:一個加強版的 AWS 命令列。連結
-
thefuck:修正你之前的命令列指令。連結
-
mycli:一個 MySQL 命令列客戶端,具有自動補全和語法高亮功能。連結 --推薦
-
pgcli:Postgres 命令列工具,具有自動補全和語法高亮功能。連結 --推薦
-
try:很簡單的命令列工具,用來試用python庫。連結
相容性(Compatibility)
幫助從 Python 2 向 Python 3遷移的庫。
-
Python-Future:這就是 Python 2 和 Python 3 之間丟失的那個相容性層。連結
-
Python-Modernize:使 Python 程式碼更加現代化以便最終遷移到 Python 3。[連結]https://github.com/mitsuhiko/python-modernize)
-
Six:Python 2 和 3 的相容性工具。連結
計算機視覺(Computer Vision)
計算機視覺庫。
- OpenCV:開源計算機視覺庫。連結
併發和並行及非同步與網路(Concurrency and Parallelism)
用以進行併發和並行操作的庫。
-
multiprocessing:(Python 標準庫) 基於程序的“執行緒”介面。連結 --推薦
-
threading:(Python 標準庫)更高層的執行緒介面。 連結 --推薦
-
eventlet:支援 WSGI 的非同步框架。連結
-
gevent:一個基於協程的 Python 網路庫,使用greenlet。連結 --推薦
-
Tomorrow:用於產生非同步程式碼的神奇的裝飾器語法實現。 連結
-
uvloop:在libuv之上超快速實現asyncio事件迴圈。連結 --推薦
-
asyncio - (Python 標準庫) 非同步 I/O, 事件迴圈, 協程以及任務 連結 --推薦
-
aiohttp 非同步http client/server框架(asyncio) 連結 --推薦
-
curio 協程併發庫. 連結
-
pulsar - 事件驅動的併發框架. 連結
-
pyzmq - ZeroMQ 訊息庫的 Python 封裝. 連結
-
Twisted - 事件驅動的網路引擎. 和asyncio有很多類似的地方,逐漸被代替,需要資料庫等相關生態圈的支援 連結
-
diesel - 基於Greenlet 的事件 I/O 框架。. 連結
-
Tornado - web 框架和非同步網路庫. 連結
-
Trio – 非同步I/O 連結 可能會飆升
-
NAPALM - 處理網路裝置的跨供應API. 連結
-
txZMQ - 基於 Twisted 的 ZeroMQ 訊息庫的 Python 封裝。連結
配置(Configuration)
用來儲存和解析配置的庫。
-
config:logging 模組作者寫的分級配置模組。連結 -- 較長時間未更新
-
ConfigObj:INI 檔案解析器,帶驗證功能。連結
-
ConfigParser:(Python 標準庫) INI 檔案解析器。連結
-
profig:通過值轉換配置多種格式。連結
-
python-decouple:將設定和程式碼完全隔離。連結
加密(Cryptography)
-
cryptography:這個軟體包意在提供密碼學基本內容和方法提供給 Python 開發者。連結
-
hashids:在 Python 中實現 hashids 。連結
-
Paramiko:SSHv2 協議的 Python (2.6+, 3.3+) ,提供客戶端和服務端的功能。連結 -- 推薦
-
Passlib:安全密碼儲存/雜湊庫,連結
-
PyCrypto:Python 密碼學工具箱。連結
-
PyNacl:網路和密碼學(NaCl) 庫的 Python 繫結。連結
資料分析(Data Analysis)
-
blaze:NumPy 和 Pandas 的大資料介面。連結
-
Open Mining:使用 Python 挖掘商業情報 (BI) (Pandas web 介面)。連結
-
orange:通過視覺化程式設計或 Python 指令碼進行資料探勘,資料視覺化,分析和機器學習。連結
-
Pandas:提供高效能,易用的資料結構和資料分析工具。連結 --強烈推薦
-
書籍:利用Python進行資料分析 2017 第二版 程式碼 連結 --推薦
-
利用Python進行資料分析·第2版 --推薦
資料驗證(Data Validation)
資料驗證庫。多用於表單驗證。
-
Cerberus: 輕量級可擴充套件的資料驗證庫.連結
-
colander:驗證並反序列化XML、JSON、HTML表單獲取的資料。連結
-
colander:json模式的實現。連結
-
kmatch:一種用於匹配/驗證/篩選 Python 字典的語言。連結
-
schema:一個用於對 Python 資料結構進行驗證的庫。連結
-
Schematics:人性化的python資料結構。連結
-
valideer:輕量級可擴充套件的資料驗證和適配庫。連結
-
voluptuous:Python 資料驗證庫。主要是為了驗證傳入 Python的 JSON,YAML 等資料。連結
資料視覺化(Data Visualization)
進行資料視覺化的庫。 參見: awesome-javascript。
-
matplotlib:Python 2D 繪相簿。連結 --推薦
-
ggplot:ggplot的 Python移植。連結 -薦
-
plotly:互動式基於瀏覽器的繪圖。連結
-
pyecharts:基於百度 Echarts 的資料視覺化庫。連結 -薦
-
pygal:Python SVG 圖表建立工具。連結
-
pygraphviz:Graphviz 的 Python 介面。連結
-
PyQtGraph:互動式實時 2D/3D/ 影象繪製及科學/工程學元件。連結
-
SnakeViz:基於瀏覽器的 Python cProfile 模組輸出結果檢視工具。連結
-
vincent:把 Python 轉換為 Vega 語法的轉換工具。連結
-
VisPy:基於 OpenGL 的高效能科學視覺化工具。連結
-
Altair - 用於Python的宣告式統計視覺化庫。連結
-
bqplot - Jupyter Notebook的互動繪相簿。連結
-
Seaborn - 使用Matplotlib進行統計資料視覺化。連結 -薦
-
plotly.py 互動式基於瀏覽器的繪圖 -薦
A Dramatic Tour through Python’s Data Visualization Landscape (including ggplot and Altair)
Python data visualization: Comparing 7 tools
10 Useful Python Data Visualization Libraries for Any Discipline
Overview of Python Visualization Tools
01+ Resources to Learn Data Science chinese
資料庫(Database)
Python實現的資料庫。
-
pickleDB:簡單,輕量級鍵值儲存資料庫。連結
-
PipelineDB:流式 SQL 資料庫。連結
-
TinyDB:輕型的,面向文件型資料庫。連結
-
ZODB: Python 原生物件資料庫。鍵值和物件圖資料庫。連結
資料庫驅動(Database Drivers)
連線和操作資料庫的庫。
-
mysql-python:Python 的 MySQL 資料庫聯結器。連結 不支援python3,不推薦
-
PyMySQL:純 Python MySQL 驅動,相容 mysql-python。連結 --推薦
-
mysql-connector-python:mysql官方python API。連結 --推薦
-
psycopg :Python 中最流行的 PostgreSQL 介面卡。連結 --推薦
-
queries:psycopg2 庫的封裝,用來和 PostgreSQL 進行互動。連結
-
txpostgres:基於 Twisted 的非同步 PostgreSQL 驅動。連結
-
apsw:另一個 Python SQLite 封裝。連結
-
dataset:在資料庫中儲存 Python 字典 pymssql:簡單的 Microsoft SQL Server 資料庫介面。連結
-
cassandra-python-driver:Cassandra 的 Python 驅動。連結
-
HappyBase:Apache HBase。連結
-
Plyvel:快速且功能豐富的 LevelDB 的 Python 介面。連結
-
pycassa:Cassandra 的 Python Thrift 驅動。連結
-
PyMongo:MongoDB 的官方 Python 客戶端。連結 -- 推薦
-
redis-py:Redis 的 Python 客戶端。連結 -- 推薦
-
telephus:基於 Twisted 的 Cassandra 客戶端。連結
-
txRedis:基於 Twisted 的 Redis 客戶端。連結
日期和時間(Date and Time)
操作日期和時間的類庫。
-
arrow:更好的 Python 日期時間操作類庫。連結 -- 推薦
-
Chronyk:Python 3 的類庫,用於解析手寫格式的時間和日期。連結
-
dateutil:Python datetime 模組的擴充套件。連結
-
delorean:解決 Python 中有關日期處理的棘手問題的庫。連結
-
moment:用來處理時間和日期的 Python 庫。靈感來自於 Moment.js。連結
-
pendulum:更處理datetime。連結
-
PyTime:簡單易用的 Python 模組,用於通過字串來操作日期/時間。連結
-
pytz:現代以及歷史版本的世界時區定義。將時區資料庫引入 Python。連結 --推薦
-
when.py:提供使用者友好的函式來幫助使用者進行常用的日期和時間操作。連結
-
when.py:人性化的datetime。連結
除錯工具(Debugging Tools)
程式碼除錯的庫。
-
ipdb:IPython的 pdb。連結
-
pudb:pdb的替代。連結 -- 推薦
-
pudb:全屏,基於控制檯的 Python 偵錯程式。連結
-
pyringe:可以在 Python 程序中附加和注入程式碼的偵錯程式。連結
-
wdb:一個奇異的 web 偵錯程式,通過 WebSockets 工作。連結
-
winpdb:一個具有圖形使用者介面的 Python 偵錯程式,可以進行遠端除錯,基於 rpdb2。連結
-
django-debug-toolbar:為 Django 顯示各種除錯資訊。連結
-
django-devserver:一個 Django 執行伺服器的替代品。連結
-
flask-debugtoolbar:django-debug-toolbar 的 flask 版。連結
-
效能分析器 lineprofiler:逐行效能分析。連結
-
Memory Profiler:監控 Python 程式碼的記憶體使用。官網、記憶體 profiling:一個互動式 Python 效能分析工具。連結
-
其他 pyelftools:解析和分析 ELF 檔案以及 DWARF 除錯資訊。連結
-
python-statsd:statsd 伺服器的 Python 客戶端。連結
深度學習(Deep Learning)
機器學習庫。 參見:awesome-deep-learning.*
- Caffe - 快速開放的深度學習框架 --推薦
- Keras - 高階神經網路庫,能夠在TensorFlow或Theano之上執行。 --推薦
- MXNet - 高效率和靈活的深度學習框架。
- Neupy - 執行和測試不同的人工神經網路演算法.
- Pytorch - Python中的張量和動態神經網路,具有強大的GPU加速功能。 --推薦
- Serpent.AI - 遊戲代理框架。 使用任何視訊遊戲作為深度學習沙盒。 --推薦
- TensorFlow - 由Google建立的最受歡迎的深度學習框架。 --強烈推薦
- Theano - 用於快速數值計算的庫. --推薦
DevOps工具(DevOps Tools)
-
DevOps的軟體和庫。*
-
Ansible - 極其簡單的IT自動化平臺。 --推薦
-
Cloud-Init - 處理雲實例的早期初始化的多分發包。
-
cuisine - 為 Fabric 提供一系列高階函式。
-
Docker Compose - 使用Docker的快速隔離開發環境。 --推薦
-
Fabric - 簡單的Pythonic遠端執行和部署工具。 --推薦
-
Fabtools - 編寫真棒Fabric檔案的工具。
-
honcho - 一個[Foreman]的Python克隆(https://github.com/ddollar/foreman),用於管理基於Procfile的應用程式。
-
nova - OpenStack計算。 --推薦
-
swift - OpenStack儲存。 --推薦
-
pexpect - 在像GNU expect這樣的偽終端中控制互動式程式。 --強烈推薦
-
psutil - 跨平臺的進行和系統實用程式模組。 --推薦
-
SaltStack - 基礎設施自動化和管理系統。 --推薦
-
supervisor - 用於UNIX的Supervisor程序控制系統。
-
gitapi:Git 的純 Python API。官網
-
hgapi:Mercurial 的純 Python API。官網
分發(Distribution)
打包為可執行檔案以便分發。
-
PyInstaller:將 Python 程式轉換成獨立的執行檔案(跨平臺)。連結 --推薦
-
dh-virtualenv:構建並將 virtualenv 虛擬環境作為Debian 包來發布。連結
-
Nuitka:將指令碼、模組、包編譯成可執行檔案或擴充套件模組。連結
-
py2app:將 Python 指令碼變為獨立軟體包(Mac OS X)。連結 --推薦
-
py2exe:將 Python 指令碼變為獨立軟體包(Windows)。連結 --已經比較久沒有更新了。
-
pynsist:用來建立 Windows 安裝程式的工具,可以在安裝程式中打包 Python本身。連結
文件(Documentation)
用以生成專案文件的庫。
-
Sphinx:Python 文件生成器。連結
-
awesome-sphinxdoc:連結
-
MkDocs:對 Markdown 友好的文件生成器。連結 -- 推薦
-
pdoc:替換Epydoc 的庫,可以自動生成 Python 庫的 API 文件。連結
-
Pycco:文學程式設計風格的文件生成器。連結
-
readthedocs:一個基於 Sphinx/MkDocs 的線上文件託管系統,對開源專案免費開放使用。連結 -- 推薦
下載器(Downloader)
用來進行下載的庫.
-
s3cmd:一個用來管理Amazon S3 和 CloudFront 的命令列工具。連結
-
s4cmd:超級 S3 命令列工具,效能更加強勁。連結
-
you-get:YouTube/Youku/Niconico 視訊下載器,使用 Python3 編寫。連結 --推薦
-
youtube-dl:一個小巧的命令列程式,用來下載 YouTube 視訊。連結
電子商務(E-commerce)
用於電子商務以及支付的框架和庫。
-
django-oscar:基於Django 的開源的電子商務框架。連結 -- 推薦
-
django-shop: 基於 Django 的店鋪系統。連結
-
Cartridge:一個基於 Mezzanine 構建的購物車應用。連結
-
shoop:基於 Django 的開源電子商務平臺。連結
-
alipay:非官方的 Python 支付寶 API。連結
-
merchant:可以接收來自多種支付平臺支付的 Django 應用。連結
-
money:Python錢類,帶有可選的CLDR支援的區域識別格式和可擴充套件的貨幣兌換解決方案。連結
-
forex-python:外匯匯率,比特幣價格指數和貨幣兌換。連結
-
saleor - Python和Django的電子商務店面。連結
-
雪峰磁針石說明:
python-currencies因為星級較少沒有收錄
編輯器外掛(Editor Plugins and IDEs)
編輯器和 IDE 的外掛
-
Elpy:Emacs Python 開發環境。連結
-
SublimeJEDI:Sublime Text 外掛,用來實現自動補全庫 Jedi。連結
-
Anaconda:把你的 Sublime Text 3 變成功能齊全的 Python IDE。連結
-
YouCompleteMe:引入基於 Jedi 的 Python 自動補全引擎。連結
-
Jedi-vim:繫結 Vim 和 Jedi 自動補全庫對 Python 進行自動補全。連結
-
Python-mode:Vim 變成 Python IDE 的多合一外掛。連結
-
PTVS:Visual Studio 的 Python 工具連結
-
wingIDE:商業化的 Python IDE,功能強大,佔用資源少,python開發。也有免費的社群版提供。[連結]https://wingware.com/) -- 推薦
-
PyCharm:商業化的 Python IDE ,由 JetBrains 開發。也有免費的社群版提供。連結
-
LiClipse:基於 Eclipse 的免費多語言 IDE 。使用 PyDev 來支援 Python 。連結
-
Spyder:開源 Python IDE。連結
-
komodo-ide 連結
電子郵件(Email)
用來發送和解析電子郵件的庫。
-
mailer:用簡單的方式傳送郵件。連結 -- 推薦
-
envelopes:人性化的電子郵件庫。連結
-
flanker:email 地址和 Mime 解析庫。連結
-
imbox:人性化的Python IMAP 庫連結
-
inbox.py:人性化的Python SMTP 伺服器。連結
-
inbox:具有時尚API的IMAP/SMTP同步系統。連結 -- 推薦
-
lamson:Python 風格的 SMTP 應用伺服器。連結
-
marrow.mailer:高效能可擴充套件郵件分發框架。連結
-
modoboa:一個郵件託管和管理平臺,具有現代的、簡約的 Web UI。連結
-
pyzmail:建立,傳送和解析電子郵件。連結
-
Talon:Mailgun 庫,用來抽取資訊和簽名。連結
-
yagmail- 另外一個 Gmail/SMTP客戶端。連結
-
sync-engine - IMAP/SMTP同步。 連結 -- 推薦
環境管理(Environment Management)
Python版本和環境管理
-
Pipenv:Pipfile,Pip和Virtualenv的結合。連結 --強烈推薦
-
p:簡單的python版本管理工具。連結
-
pyenv:簡單的python版本管理。連結 --強烈推薦
-
venv:建立python虛擬環境,python3標準庫。連結 --強烈推薦
-
virtualenv:建立獨立的Python 環境。連結 --強烈推薦
-
virtualenvwrapper:virtualenv 的擴充套件。連結 --強烈推薦
檔案(Files)
檔案管理和 MIME(多用途的網際郵件擴充協議)型別檢測。
-
imghdr:(Python 標準庫)檢測圖片型別。連結
-
mimetypes:(Python 標準庫)將檔名對映為 MIME 型別。連結
-
path.py:對 os.path 進行封裝的模組。連結
-
pathlib:(Python3.4+ 標準庫)跨平臺的、面向物件的路徑操作庫。連結 --強烈推薦
-
python-magic:檔案型別檢測的第三方庫 libmagic 的 Python 介面。連結
-
Unipath:用面向物件的方式操作檔案和目錄。連結
-
watchdog:管理檔案系統事件的 API 和 shell 工具。連結 --推薦
外部函式介面(Foreign Function Interface)
-
cffi:呼叫 C 程式碼。連結 --強烈推薦
-
ctypes:(Python 標準庫) 呼叫 C 程式碼。連結 --強烈推薦
-
PyCUDA:Nvidia CUDA API 的封裝。連結
-
SWIG:簡單的包裝器和介面生成器。連結