1. 程式人生 > >Python庫資源大全

Python庫資源大全

輸入 acs stack linux pattern ngs 解碼 中文 Go

轉載地址:https://zhuanlan.zhihu.com/p/27350980

本文是一個精心設計的Python框架、庫、軟件和資源列表,是一個Awesome XXX系列的資源整理,由BigQuant整理加工而成,歡迎擴散、歡迎補充!對機器學習、深度學習在量化投資中應用感興趣的朋友可以直接在BigQuant人工智能量化投資平臺上開發策略~~~ 本文目錄:
 算法和設計模型
 構建工具
 緩存
 代碼分析
 命令行工具
 兼容性
 計算機視覺
 並發和並行
 加密
 數據分析
 數據驗證
 數據可視化
 數據框驅動
 數據庫
 日期和時間
 調試工具
 深度學習
 文檔
 下載器
 電子商務
 編輯器插件和IDE
 電子郵件
 環境管理
 GUI
 遊戲開發
 地理位置
 HTML操作
 硬件
 圖像
 交互界面
 日誌
 機器學習
 自然語言處理
 包管理
 科學計算
 特殊格式處理
 視頻
 音頻
 網頁爬取
 Web框架

算法和設計模式

Python實現算法和設計模式

  • algorithms - Python的一個算法模塊.
  • PyPattyrn - 一個用於實現常見設計模式的簡單而有效的庫.
  • python-patterns - Python中設計模式的集合.
  • sortedcontainers - 快速,純Python的SortedList,SortedDict和SortedSet類型的實現.

構建工具

從源代碼編譯軟件

  • BitBake - 一個嵌入Linux的類似make的構建工具.
  • buildout - 用於從多個部分創建、組裝和部署應用程序的構建系統.
  • PlatformIO - 對不同開發平臺的代碼進行構建的控制臺工具.
  • PyBuilder - 用不同開發平臺構建代碼的控制臺工具.
  • SCons - 軟件構建工具.

高速緩存

用於緩存數據的庫

  • Beaker - 用於web應用和獨立python腳本使用的緩存庫.
  • DiskCache - SQLite和文件支持的緩存後端,具有比memcached和redis更快的查找功能.
  • django-cache-machine - Django模型的自動緩存.
  • django-cacheops - 支持自動或手動查詢緩存,並且具有自動粒度事件驅動的ORM緩存.
  • django-viewlet - 使用擴展的緩存來控制渲染的模板部分.
  • dogpile.cache - dogpile.cache是一個緩存API,它提供了一個通用接口來緩存任何種類的後端.
  • HermesCache - 具有基於標簽的無效和預防效果的Python緩存庫.
  • johnny-cache - django應用程序的緩存框架.
  • pylibmc - 圍繞libmemcached接口的Python包裝器.

代碼分析

用於分析、解析和操作代碼的庫和工具

  • coala - 語言獨立、易於擴展的代碼分析應用程序.
  • code2flow - 將你的Python和JavaScript代碼轉換為DOT流程圖.
  • pycallgraph - 可視化你的Python應用程序的流程(調用圖)的庫.
  • pysonar2 - Python的類型參考和索引器.

命令行工具

用於構建命令行應用程序的庫

  • 命令行應用程序開發
    • asciimatics - 跨平臺的全屏終端軟件包(即鼠標/鍵盤輸入和彩色定位的文本輸出),具有復雜動畫和特效的高級API.
    • cement - Python的CLI應用程序框架.
    • click - 用組合的方式創建美觀的命令行界面的包.
    • cliff - 用多層次命令創建命令行程序的框架.
    • clint - Python命令行應用工具.
    • colorama - 跨平臺彩色終端文本.
    • docopt - Pythonic命令行參數解析器.
    • Gooey - 將命令行程序轉換成一行完整的GUI應用程序
    • Python-Fire - 用於從任何Python對象創建命令行界面(CLI)的庫.
    • python-prompt-toolkit - 用於構建強大的交互式命令行的庫.
  • 生產力工具
    • aws-cli - Amazon Web Services的通用命令行界面.
    • bashplotlib - 在終端中制作基本圖.
    • caniusepython3 - 確定哪些項目阻止你移植到Python 3.
    • cookiecutter - 從cookiecuters(項目模板)創建項目的命令行實用程序.
    • doitlive - 終端中現場演示的工具.
    • howdoi - 通過命令行即時編碼.
    • httpie - 命令行HTTP客戶端,是一個用戶友好的cURL替換工具.
    • mycli - 具有自動完成和語法突出顯示的MySQL的終端客戶端.
    • PathPicker - 從bash輸出選擇文件.
    • percol - percol在UNIX上為傳統的管道概念增添了交互式選擇的風格.
    • pgcli - 具有自動完成和語法高亮的Postgres CLI.
    • SAWS - 增加的AWS命令行界面(CLI).
    • thefuck - 更正你之前的控制臺命令.
    • try - 令人敬畏的cli工具.

兼容性

從Python 2遷移到3的庫

  • Python-Future - Python 2和Python 3之間缺少的兼容性層.
  • Python-Modernize - 使Python代碼現代化,實現最終的Python 3遷移.
  • Six - Python 2和3兼容性實用程序.

計算機視覺

計算機視覺相關的庫

  • OpenCV - 比較知名的計算機視覺的庫.
  • pyocr - Tesseract和Cuneiform的包裝.
  • pytesseract - Google Tesseract OCR的另一個包裝.
  • SimpleCV - 構建計算機視覺應用程序的開源框架.

並發和並行

用於並發和並行執行的庫

  • eventlet - 具有WSGI支持的異步框架.
  • gevent - 基於協同程序的Python網絡庫.
  • multiprocessing - Python標準庫————基於流程的“線程”接口.
  • threading - (Python標準庫)高級線程接口.
  • Tomorrow - 異步代碼的魔術裝飾器語法.
  • uvloop - uvloop是對內置的asyncio事件循環的一個快速、簡單的替換。uvloop在Cython中實現,並使用libuv.

加密

  • cryptography - 一個旨在向Python開發人員提供加密算法的軟件包.
  • hashids - 在Python 中實現hashids(Hashids),兼容Python 2和Python 3.
  • Paramiko - 實現SSHv2協議的Python(2.6 +,3.3+),提供客戶端和服務器功能.
  • Passlib - 安全的密碼存儲/哈希庫,非常高的安全級別.
  • PyNacl - Python綁定到網絡和加密(NaCl)庫.

數據分析

數據分析包

  • Blaze - NumPy和Pandas與Big Data接口.
  • Open Mining - 面向Pandas的商業智能(BI)界面.
  • Orange - 通過視覺編程或腳本進行數據挖掘、數據可視化、分析和機器學習.
  • Pandas - 量化領域數據分析最常用的一個包.

數據驗證

用於驗證數據的庫。在許多情況下用於表格

  • Cerberus - 輕量級和可擴展的數據驗證庫.
  • colander - 通過XML、JSON、HTML表單文檔獲取和反序列化數據.
  • jsonschema - Python 的JSON Schema的實現.
  • schema - 用於驗證Python數據結構的庫.
  • Schematics - 數據結構驗證.
  • valideer - 輕量級可擴展數據驗證和適應庫.
  • voluptuous - 一個Python數據驗證庫.

數據可視化

用於可視化數據的庫

  • Altair - 使用Altair,您可以花費更多時間了解您的數據及其含義。Altair的API簡單,友好和一致,建立在強大的 Vega-Lite JSON規範之上。這種優雅的簡潔性以最少的代碼產生了美麗而有效的可視化.
  • Bokeh - Python的交互式網絡繪圖.
  • ggplot - 與ggplot2相同的API.
  • Matplotlib - 一個Python 2D繪圖庫.
  • Pygal - 一個Python SVG圖表創建者.
  • PyGraphviz - Graphviz的 Python接口.
  • PyQtGraph - 交互式和實時2D / 3D /圖像繪圖和科學/工程小部件.
  • Seaborn - 使用Matplotlib的統計數據可視化.
  • VisPy - 基於OpenGL的高性能科學可視化.

數據庫

在Python中實現的數據庫

  • pickleDB - 一個用於Python的簡單輕便的鍵值存儲.
  • PipelineDB - 流式SQL數據庫,一個開源關系數據庫,可以連續地在流上運行SQL查詢,並將結果逐個存儲在表中.
  • TinyDB - 一個微小的、面向文檔的數據庫.
  • ZODB - Python的本機對象數據庫.

數據庫驅動程序

用於連接和操作數據庫的庫

  • MySQL
    • mysql-python - 用於Python的MySQL數據庫連接器.
    • mysqlclient - mysql-python fork支持Python 3.
    • oursql - 一個更好的MySQL連接器.
    • PyMySQL - 純Python MySQL驅動程序兼容於mysql-python.
  • PostgreSQL
    • psycopg2 - 最流行的適用於Python的PostgreSQL適配器.
    • queries - 用於與PostgreSQL交互的psycopg2庫的包裝器.
    • txpostgres - 用於PostgreSQL的基於Twisted的異步驅動程序.
  • 其他關系型數據庫
    • apsw - 另一個Python SQLite包裝器.
    • dataset - 將Python腳本存儲在數據庫中 - 與SQLite,MySQL和PostgreSQL一起使用.
    • pymssql - Microsoft SQL Server的簡單數據庫接口.
  • 非關系型數據庫
    • cassandra-python-driver - Cassandra的Python驅動程序.
    • HappyBase - 個開發人員友好的Apache HBase庫.
    • Plyvel - 一個快速和功能豐富的Python接口到LevelDB.
    • py2neo - 適用於Neo4j 靜態界面的 Python包裝客戶端.
    • pycassa - Cassandra的 Python Thrift驅動.
    • PyMongo - MongoDB的官方Python客戶端.
    • redis-py - Redis Python客戶端.
    • telephus - Cassandra的基於Twisted的客戶端.
    • txRedis - Redis的基於Twisted的客戶端.

日期和時間

處理日期和時間的庫

  • arrow - Python功能強大的日期和時間庫.
  • Chronyk -用於解析人為時間和日期的Python 3庫.
  • dateutil - 擴展到標準的Python datetime模塊.
  • delorean - Delorean建立在pytz和dateutil之上,Delorean將為處理時間提供自然語言改進,並提供易於使用的日期時間抽象
  • moment - 處理日期/時間的Python庫。靈感來自Moment.js.
  • Pendulum - Python datetimes變得容易.
  • PyTime - 一個易於使用的Python模塊,旨在通過字符串操作日期/時間/日期時間.
  • pytz - 處理時區的一個庫.
  • when.py - 提供用戶友好的功能來幫助執行常見的日期和時間操作.

調試工具

代碼調試工具的包

  • 類似於pdb的調試器
    • ipdb - 啟用了IPython的pdb.
    • pdb++ - pdb的另一個替代品.
    • pudb - 一個全屏幕的基於控制臺的Python調試器.
    • remote-pdb - 遠程vanilla PDB調試器(通過TCP sockets).
    • wdb - 通過WebSockets的Web調試器.
  • Profiler性能分析器
    • line_profiler - 逐行剖析.
    • memory_profiler - 監視Python代碼的內存使用情況.
    • profiling - 個交互式Python分析器.
    • vprof - Visual Python分析器.
  • 其他
    • django-debug-toolbar - 顯示Django的各種調試信息.
    • django-devserver - Django的runserver的替代品.
    • flask-debugtoolbar - django-debug工具欄的一個端口.
    • hunter - 一個靈活的代碼跟蹤工具包.
    • lptrace - strace for Python程序.
    • manhole - 調試服務,將接受unix域套接字連接,並顯示所有線程的堆棧跟蹤和交互式提示.
    • pyelftools - 解析和分析ELF文件和DWARF調試信息.
    • pyringe - 調試器能夠附加和註入代碼到Python進程.

深度學習

神經網絡和深度學習框架

  • Caffe - 深度學習的一個快速上手開放框架
  • Keras - 一個高級神經網絡庫,能夠運行在TensorFlow或者Theano之上.
  • MXNet - 一個旨在提高效率和靈活性的深度學習框架.
  • Neupy - 運行和測試不同的人工神經網絡算法.
  • Pytorch - 具有強大GPU加速度的Python中的Tensors和動態神經網絡.
  • TensorFlow - 由Google創建的最受歡迎的深度學習框架.
  • Theano - 快速數值計算的深度學習庫.

文檔

用於生成項目文檔的庫

  • Sphinx - Python文檔生成器.
  • MkDocs - Markdown友好的文檔生成器.
  • pdoc - Epydoc替換為Python庫自動生成API文檔.
  • Pycco - 識字編程式文檔生成器.

下載器

下載方面的庫

  • s3cmd - 用於管理Amazon S3和CloudFront的命令行工具.
  • s4cmd - 超級S3命令行工具,有利於更高的性能.
  • you-get -一個用Python 3編寫的YouTube /優酷/ Niconico視頻下載.
  • youtube-dl - 從YouTube下載視頻的小型命令行程序.

電子商務

電子商務和付款框架的庫.

  • alipay - 非官方的Alipay API for Python.
  • Cartridge - Cartridge是使用Django 框架構建的購物車應用程序.
  • django-oscar - Django的開源電子商務框架.
  • django-shop - 一個基於Django的商店系統.
  • merchant - 一個Django應用程序接受來自各種支付處理器的付款.
  • money - 具有可選CLDR支持的區域設置和可擴展的貨幣兌換解決方案的
  • python-currencies - 顯示世界各國貨幣格式的Python包.
  • forex-python - 外匯匯率,比特幣價格指數和貨幣兌換.
  • shoop - 基於Django的開源電子商務平臺.

編輯器插件和IDE

  • Emacs
    • Elpy - Emacs Python開發環境.
  • Sublime Text
    • Anaconda - Anaconda將您的Sublime Text 3轉換為全功能的Python開發IDE.
    • SublimeJEDI - SublimeJEDI是一個Sublime Text 2和Sublime Text 3的插件.
  • Vim
    • Jedi-vim - 用於Python的Jedi自動完成庫的Vim綁定.
    • Python-mode - 一個將Vim轉換成Python IDE的插件.
    • YouCompleteMe - 包括基於Jedi的Python完成引擎.
  • Visual Studio
    • PTVS - Visual Studio的Python工具.
  • Visual Studio Code
    • Python - 具有豐富的Python語言支持的擴展,其中包括linting,IntelliSense,格式化,重構,調試,單元測試和jupyter支持.
    • Magic Python -Sublime Text,Atom和Visual Studio代碼的前沿Python語法熒光筆。由GitHub用來突出顯示你的Python代碼!
  • IDE
    • LiClipse - 基於Eclipse的免費polyglot IDE。使用PyDev支持Python.
    • PyCharm - JetBrains的商業Python IDE。有免費社區版可用.
    • Spyder - 開源Python IDE.

郵件

用於發送和解析郵件的庫

  • envelopes - 發送郵件的庫.
  • flanker - 用於發送和解析郵件的庫.
  • imbox - 用於人類的Python IMAP.
  • inbox.py - 用於人類的Python SMTP服務器.
  • lamson - Pythonic SMTP應用服務器.
  • Marrow Mailer - 高性能可擴展郵件傳遞框架.
  • modoboa -郵件托管和管理平臺,包括現代和簡化的Web UI.
  • Nylas Sync Engine -在功能強大的電子郵件同步平臺之上提供RESTful API.
  • yagmail - 另一個Gmail / SMTP客戶端.

環境管理

Python版本和環境管理庫

  • Pipenv - Pipfile,Pip和Virtualenv的組合.
  • p -交互式Python版本管理.
  • pyenv -簡單的Python版本管理.
  • venv - Python 3.3+中的 Python標準庫)創建輕量級的虛擬環境.
  • virtualenv - 創建孤立的Python環境的工具.
  • virtualenvwrapper - 一組對virtualenv的擴展.

GUI

用於使用圖形用戶界面應用程序的庫

  • curses - 用於創建終端GUI應用程序的ncurses的內置包裝器.
  • enaml - 使用聲明式語法(如QML)創建漂亮的用戶界面.
  • Flexx - Flexx是一個純Python工具包,用於創建GUI,它使用Web技術進行渲染.
  • kivy - 用於創建在Windows,Linux,Mac OS X,Android和iOS上運行的NUI應用程序的庫.
  • pyglet - 一個用於Python的跨平臺窗口和多媒體庫.
  • PyGObject - 用於GLib / GObject / GIO / GTK +(GTK + 3)的Python綁定
  • PyQt - 用於Qt跨平臺應用程序和UI框架的Python綁定,支持Qt v4和Qt v5框架.
  • PySide - 用於Qt跨平臺應用程序和UI框架的Python綁定,支持Qt v4框架.
  • pywebview - 圍繞Webview組件的輕量級跨平臺本機包裝,允許在自己的本機專用窗口中顯示HTML內容
  • Tkinter - Tkinter是Python的事實上的標準GUI包.
  • Toga - 一個Python本機的OS本機GUI工具包.
  • urwid - 用於創建終端GUI應用程序的庫,具有對窗口小部件、事件、豐富顏色等的強大支持.
  • wxPython - wxWidgets C ++類庫與Python的混合.

遊戲開發

遊戲開發庫.

  • Cocos2d - Cocos2d是構建2D遊戲,演示和其他圖形/交互應用程序的框架。它是基於pyglet.
  • Panda3D - 迪斯尼開發和卡內基梅隆大學娛樂技術中心保持的3D遊戲引擎。用C ++編寫,完全包含在Python中.
  • Pygame - Pygame是一組用於編寫遊戲的Python模塊.
  • PyOgre - Ogre 3D渲染引擎的Python綁定,可用於遊戲、模擬、任何3D.
  • PyOpenGL - 用於OpenGL的Python ctypes綁定及其相關API.
  • PySDL2 - SDL2庫的基於ctypes的包裝器.
  • RenPy - 視覺新穎引擎.

地理位置

地理編碼地圖和緯度和經度的庫

  • django-countries - 提供用於表單選擇的Django應用程序,可以標誌圖標靜態文件和模型的國家/地區字段.
  • GeoDjango - 世界級的地理網絡框架.
  • GeoIP - 用於MaxMind GeoIP遺留數據庫的Python API.
  • geojson - GeoJSON的Python綁定和實用程序.
  • geopy - Python地理編碼工具箱.
  • pygeoip -純Python GeoIP API.

HTML操作

使用HTML和XML的庫

  • BeautifulSoup - Beautiful Soup提供一些簡單的、python式的函數用來處理導航、搜索、修改分析樹等功能。它是一個工具箱,通過解析文檔為用戶提供需要抓取的數據,因為簡單,所以不需要多少代碼就可以寫出一個完整的應用程序.
  • bleach - 理HTML(需要html5lib).
  • cssutils - 個用於Python的CSS庫.
  • html5lib - 根據WHATWG規範生成HTML/ XML文檔的DOM。該規範被用在現在所有的瀏覽器上.
  • lxml - 一個用於處理HTML和XML的非常快速、易於使用和通用的庫.
  • MarkupSafe - 為Python編寫XML / HTML / XHTML標記安全字符串.
  • pyquery - 解析DOM樹和jQuery選擇器.
  • untangle - 輕松實現將XML文件轉換為Python對象.
  • WeasyPrint - 可以導出為PDF的HTML和CSS的視覺呈現引擎.
  • xmldataset - 簡單的XML解析.
  • xmltodict - 使用XML感覺就像使用JSON一樣.

Hardware

與硬件相關的庫.

  • ino - 與Arduino合作的命令行工具包.
  • Pingo - Pingo提供統一的API來編程像Raspberry Pi、pcDuino、Intel Galileo等設備.
  • Pyro - Python機器人.
  • PyUserInput - 用於跨平臺控制鼠標和鍵盤的模塊.
  • scapy - Scapy是一個可以讓用戶發送、偵聽和解析並偽裝網絡報文的Python程序。這些功能可以用於制作偵測、掃描和攻擊網絡的工具.
  • wifi - 在Linux上使用WiFi的Python庫和命令行工具.

圖像

處理圖像的庫

  • hmap - 圖像直方圖的庫.
  • imgSeek - 使用視覺相似性搜索圖像集合的項目.
  • nude.py - 色情圖片識別的庫.
  • pagan - 基於輸入字符串和散列的復古識別(Avatar)生成.
  • pillow - Pillow由PIL而來,是一個圖像處理庫.
  • pyBarcode - 在Python中創建條形碼而不需要PIL.
  • pygram - 像Instagram的圖像過濾器.
  • python-qrcode - 一個純Python QR碼生成器.
  • Quads - 基於四叉樹的計算機藝術.
  • scikit-image - 用於(科學)圖像處理的Python庫.
  • thumbor - 一個小型圖像服務,具有剪裁,尺寸重設和翻轉功能.
  • wand - MagickWand的 Python綁定,ImageMagick的 C API.

交互式

交互式Python解釋器(REPL)

  • bpython - 強大的交互式Python終端.
  • Jupyter Notebook (IPython) - 一個豐富的工具包,可幫助您充分利用交互式使用Python.
  • ptpython - 高級Python REPL構建在python-prompt-toolkit之上.

日誌

用於生成和使用日誌的庫

  • Eliot - 復雜和分布式系統的日誌記錄.
  • logbook - Logging replacement for Python.
  • logging - (Python standard library) Logging facility for Python.
  • Sentry - A realtime logging and aggregation server.

機器學習

機器學習相關的資源庫.

  • gensim - Gensim是用於主題建模、文檔索引 和大型語料庫的相似檢索的Python庫.
  • Metrics - 一個Python實現的一些流行的推薦算法.
  • NuPIC - Apache Spark的可擴展機器學習庫.
  • scikit-learn - 機器學習最流行的Python庫.
  • Spark ML - 是一個Python scikit構建和分析推薦系統.
  • vowpal_porpoise - 一個輕量級的Python包裝的Vowpal Wabbit.
  • xgboost - 可擴展、便攜式和分布式梯度提升(GBDT,GBRT或GBM)庫,適用於Python、R、Java、Scala、C ++等。

Microsoft Windows

Microsoft Windows上的Python編程

  • Python(x,y) - 基於Qt和Spyder的基於科學應用的Python分發.
  • pythonlibs - 用於Python擴展程序包的非官方Windows二進制文件.
  • PythonNet - 與.NET公共語言運行時(CLR)的Python集成.
  • PyWin32 - 適用於Windows的Python擴展.
  • WinPython - 適用於Windows 7/8的便攜式開發環境.

自然語言處理

人類語言處理的庫

  • Jieba - 中文分詞包.
  • langid.py - 獨立語言識別系統.
  • NLTK - 構建Python程序以處理人類語言數據的領先平臺.
  • Pattern - Python的Web挖掘模塊.
  • SnowNLP - 用於處理中文文本的庫.
  • spaCy - spaCy擅長大規模的信息提取任務.
  • TextBlob - 具有文本處理 、 情緒分析、詞性標註、名詞短語提取、翻譯等功能的一個庫.
  • TextGrocery - 一種基於LibLinear和Jieba的簡單、高效的短文分類工具.

包管理

一種基於LibLinear和Jieba的簡單,高效的短文分類工具

  • pip - Python包和依賴關系管理器.
  • conda - Conda是一個開源軟件包管理系統和環境管理系統,用於安裝多個版本的軟件包及其依賴關系,並在它們之間輕松切換。它適用於Linux,OS X和Windows,並且是為Python程序創建的,但可以打包和分發任何軟件.
  • Curdling - Curdling是用於管理Python包的命令行工具.
  • pip-tools - 能夠保證你Python依賴為最新的一組工具.
  • wheel - 新的Python分發標準,旨在取代egg.

科學計算

科學計算的庫

  • astropy - 一個用於天文學的社區Python庫.
  • bcbio-nextgen - 其目標是克服在快速變化的研究領域工作在復雜管道上的個體開發人員的生物、算法和計算挑戰.
  • bccb - 生物分析的庫.
  • Biopython - Biopython是一套免費提供的生物計算工具.
  • cclib - 用於解析和解釋計算化學包的結果的庫.
  • NetworkX - 復雜社會網絡研究的Python庫.
  • NIPY - 神經成像工具包的集合.
  • NumPy - 用Python進行科學計算的基礎軟件包.
  • Open Babel - 一種化學工具箱,旨在呈現多種語言的化學數據.
  • ObsPy - 地震學的Python工具箱.
  • PyDy - Python Dynamics的縮寫,用於協助動態運動建模中的工作流程.
  • PyMC - Python Dynamics的縮寫,用於協助動態運動建模中的工作流程.
  • RDKit - 化學信息學和機器學習軟件.
  • SciPy - SciPy是另一種使用NumPy來做高等數學、信號處理、優化、統計和許多其它科學任務的語言擴展。.
  • statsmodels - Python中的統計建模和計量經濟學.
  • SymPy - Python中的統計建模和計量經濟學.
  • Zipline - 一個Pythonic算法交易庫.
  • BigQuant - 首個人工智能量化投資平臺,可直接使用機器學習、深度學習技術開發量化策略

特殊格式處理

用於解析和操縱特定文本格式的庫

  • General
    • tablib - 處理XLS,CSV,JSON,YAML中的表格數據集的模塊.
  • Office
    • Marmir - 使用Python數據結構並將其轉換成電子表格.
    • openpyxl - 用於讀寫Excel 2010 xlsx / xlsm / xltx / xltm文件的庫.
    • pyexcel - 提供一個用於讀取,操作和編寫csv、ods、xls、xlsx和xlsm文件的APIs.
    • python-docx - 讀取、查詢和修改Microsoft Word 2007/2008 docx文件.
    • relatorio - 模板OpenDocument文件.
    • unoconv - 轉換LibreOffice / OpenOffice支持的任何文檔格式.
    • XlsxWriter - 用於創建Excel .xlsx文件的Python模塊.
    • xlwings - 一個BSD許可的庫,可以輕松地從Excel調用Python,反之亦然.
    • xlwt / xlrd - 從Excel文件中寫入和讀取數據和格式化信息.
  • PDF
    • PDFMiner - 從PDF文檔中提取信息的工具.
    • PyPDF2 - 能夠分割、合並和轉換PDF頁面的庫.
    • ReportLab - 允許快速創建豐富的PDF文檔.
  • Markdown
    • Mistune - 快速、功能齊全的純文本解析器.
    • Python-Markdown - John Gruber的Markdown的Python實現.
  • YAML
    • PyYAML - Python的PyYAML - YAML實現.
  • CSV
    • csvkit - 用於轉換和使用CSV的工具.
  • Archive
    • unp - 一個可以輕松解壓存檔的命令行工具.

視頻

用於操縱視頻和GIF的庫.

  • moviepy - 用於基於腳本的電影編輯的模塊,包括動畫GIF等多種格式.
  • scikit-video - SciPy的視頻處理模塊.

音頻

用來操作音頻的庫

  • audiolazy -Python 的數字信號處理包。
  • audioread – 交叉庫 (GStreamer + Core Audio + MAD + FFmpeg) 音頻解碼。
  • beets – 一個音樂庫管理工具及 MusicBrainz 標簽添加工具
  • dejavu – 音頻指紋提取和識別
  • django-elastic-transcoder – Django + Amazon Elastic Transcoder。
  • eyeD3 – 一個用來操作音頻文件的工具,具體來講就是包含 ID3 元信息的 MP3 文件。
  • id3reader – 一個用來讀取 MP3 元數據的 Python 模塊。
  • m3u8 – 一個用來解析 m3u8 文件的模塊。
  • mutagen – 一個用來處理音頻元數據的 Python 模塊。
  • pydub – 通過簡單、簡潔的高層接口來操作音頻文件。
  • pyechonest – Echo Nest API 的 Python 客戶端
  • talkbox – 一個用來處理演講/信號的 Python 庫
  • TimeSide – 開源 web 音頻處理框架。
  • tinytag – 一個用來讀取MP3, OGG, FLAC 以及 Wave 文件音樂元數據的庫。
  • mingus – 一個高級音樂理論和曲譜包,支持 MIDI 文件和回放功能。

網絡爬蟲

網絡站點爬取的庫.

  • cola - 一個分布式爬蟲框架.
  • Demiurge - 基於PyQuery 的爬蟲微型框架.
  • feedparser - 通用 feed 解析器.
  • Grab - 站點爬取框架.
  • MechanicalSoup - 用於自動和網絡站點交互的 Python 庫.
  • portia - Scrapy 可視化爬取.
  • pyspider - 一個強大的爬蟲系統.
  • RoboBrowser - A simple, Pythonic library for browsing the web without a standalone web browser.
  • Scrapy - 一個簡單的Python 風格的庫,用來瀏覽網站,而不需要一個獨立安裝的瀏覽器.

Web框架

全棧式web框架

  • Bottle - 快速、簡單和輕量級的WSGI微網框架.
  • CherryPy - 一個簡約的Python Web框架,HTTP / 1.1兼容和WSGI線程池.
  • Django - Python中最流行的Web框架.
  • Flask - 一個 Python 微型框架.
  • Pyramid - 一個小而快速的,開放源碼的Python Web框架.

  • Sanic - 寫得快的Web服務器.

  • Tornado - 個Web框架和異步網絡庫.
  • TurboGears - 擁有可擴展到完整堆棧解決方案的微型功能.
  • Web2py - 用於安全數據庫驅動的基於Web的應用程序的全棧企業框架.

代碼質量

  • Codacy - 自動代碼審查,以更快的速度運送更好的代碼。免費開源.
  • Codecov - 代碼覆蓋儀表板.
  • Landscape - 托管連續的Python代碼指標.
  • QuantifiedCode - 數據驅動、自動化、連續的代碼審查工具.

英文出處為:Awesome Python

Python庫資源大全