python库大全

这又是一个 Awesome XXX 系列的资源整理,由 vinta 发起和维护。内容包括:Web框架、网络爬虫、网络内容提取、模板引擎、数据库、数据可视化、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析等。

伯乐在线已在 GitHub 上发起「Python 资源大全中文版」的整理。欢迎扩散、欢迎加入。

GitHub - jobbole/awesome-python-cn: Python资源大全中文版,内容包括:Web框架、网络爬虫、网络内容提取、模板引擎、数据库、数据可视化、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析等

环境管理

管理 Python 版本和环境的工具

  • p – 非常简单的交互式 python 版本管理工具。
  • pyenv – 简单的 Python 版本管理工具。
  • Vex – 可以在虚拟环境中执行命令。
  • virtualenv – 创建独立 Python 环境的工具。
  • virtualenvwrapper- virtualenv 的一组扩展。

包管理

管理包和依赖的工具。

  • pip – Python 包和依赖关系管理工具。
  • pip-tools – 保证 Python 包依赖关系更新的一组工具。
  • conda – 跨平台,Python 二进制包管理工具。
  • Curdling – 管理 Python 包的命令行工具。
  • wheel – Python 分发的新标准,意在取代 eggs。

包仓库

本地 PyPI 仓库服务和代理。

  • warehouse – 下一代 PyPI。
  • devpi – PyPI 服务和打包/测试/分发工具。
  • localshop – 本地 PyPI 服务(自定义包并且自动对 PyPI 镜像)。

分发

打包为可执行文件以便分发。

  • PyInstaller – 将 Python 程序转换成独立的执行文件(跨平台)。
  • dh-virtualenv – 构建并将 virtualenv 虚拟环境作为一个 Debian 包来发布。
  • Nuitka – 将脚本、模块、包编译成可执行文件或扩展模块。
  • py2app – 将 Python 脚本变为独立软件包(Mac OS X)。
  • py2exe – 将 Python 脚本变为独立软件包(Windows)。
  • pynsist – 一个用来创建 Windows 安装程序的工具,可以在安装程序中打包 Python本身。

构建工具

将源码编译成软件。

  • buildout – 一个构建系统,从多个组件来创建,组装和部署应用。
  • BitBake – 针对嵌入式 Linux 的类似 make 的构建工具。
  • fabricate – 对任何语言自动找到依赖关系的构建工具。
  • PlatformIO – 多平台命令行构建工具。
  • PyBuilder – 纯 Python 实现的持续化构建工具。
  • SCons – 软件构建工具。

交互式解析器

交互式 Python 解析器。

文件

文件管理和 MIME(多用途的网际邮件扩充协议)类型检测。

  • imghdr – (Python 标准库)检测图片类型。
  • mimetypes – (Python 标准库)将文件名映射为 MIME 类型。
  • path.py – 对 os.path 进行封装的模块。
  • pathlib – (Python3.4+ 标准库)跨平台的、面向对象的路径操作库。
  • python-magic- 文件类型检测的第三方库 libmagic 的 Python 接口。
  • Unipath- 用面向对象的方式操作文件和目录
  • watchdog – 管理文件系统事件的 API 和 shell 工具

日期和时间

操作日期和时间的类库。

  • arrow- 更好的 Python 日期时间操作类库。
  • Chronyk – Python 3 的类库,用于解析手写格式的时间和日期。
  • dateutil – Python datetime 模块的扩展。
  • delorean- 解决 Python 中有关日期处理的棘手问题的库。
  • moment – 一个用来处理时间和日期的Python库。灵感来自于Moment.js。
  • PyTime – 一个简单易用的Python模块,用于通过字符串来操作日期/时间。
  • pytz – 现代以及历史版本的世界时区定义。将时区数据库引入Python。
  • when.py – 提供用户友好的函数来帮助用户进行常用的日期和时间操作。

文本处理

用于解析和操作文本的库。

  • 通用
    • chardet – 字符编码检测器,兼容 Python2 和 Python3。
    • difflib – (Python 标准库)帮助我们进行差异化比较。
    • ftfy – 让Unicode文本更完整更连贯。
    • fuzzywuzzy – 模糊字符串匹配。
    • Levenshtein – 快速计算编辑距离以及字符串的相似度。
    • pangu.py – 在中日韩语字符和数字字母之间添加空格。
    • pyfiglet -figlet 的 Python实现。
    • shortuuid – 一个生成器库,用以生成简洁的,明白的,URL 安全的 UUID。
    • unidecode – Unicode 文本的 ASCII 转换形式 。
    • uniout – 打印可读的字符,而不是转义的字符串。
    • xpinyin – 一个用于把汉字转换为拼音的库。
  • Slug化
    • awesome-slugify – 一个 Python slug 化库,可以保持 Unicode。
    • python-slugify – Python slug 化库,可以把 unicode 转化为 ASCII。
    • unicode-slugify – 一个 slug 工具,可以生成 unicode slugs ,需要依赖 Django 。
  • 解析器
    • phonenumbers – 解析,格式化,储存,验证电话号码。
    • PLY – lex 和 yacc 解析工具的 Python 实现。
    • Pygments – 通用语法高亮工具。
    • pyparsing – 生成通用解析器的框架。
    • python-nameparser – 把一个人名分解为几个独立的部分。
    • python-user-agents – 浏览器 user agent 解析器。
    • sqlparse – 一个无验证的 SQL 解析器。

特殊文本格式处理

一些用来解析和操作特殊文本格式的库。

  • 通用
    • tablib – 一个用来处理中表格数据的模块。
  • Office
    • Marmir – 把输入的Python 数据结构转换为电子表单。
    • openpyxl – 一个用来读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的库。
    • python-docx – 读取,查询以及修改 Microsoft Word 2007/2008 docx 文件。
    • unoconv – 在 LibreOffice/OpenOffice 支持的任意文件格式之间进行转换。
    • XlsxWriter – 一个用于创建 Excel .xlsx 文件的 Python 模块。
    • xlwings – 一个使得在 Excel 中方便调用 Python 的库(反之亦然),基于 BSD 协议。
    • xlwt / xlrd – 读写 Excel 文件的数据和格式信息。
    • relatorio – 模板化OpenDocument 文件。
  • PDF
    • PDFMiner – 一个用于从PDF文档中抽取信息的工具。
    • PyPDF2 – 一个可以分割,合并和转换 PDF 页面的库。
    • ReportLab – 快速创建富文本 PDF 文档。
  • Markdown
    • Mistune – 快速并且功能齐全的纯 Python 实现的 Markdown 解析器。
    • Python-Markdown – John Gruber’s Markdown 的 Python 版实现。
  • YAML
    • PyYAML – Python 版本的 YAML 解析器。
  • CSV
    • csvkit – 用于转换和操作 CSV 的工具。
  • Archive
    • unp – 一个用来方便解包归档文件的命令行工具。

自然语言处理

用来处理人类语言的库。

  • NLTK – 一个先进的平台,用以构建处理人类语言数据的 Python 程序。
  • jieba – 中文分词工具。
  • langid.py – 独立的语言识别系统。
  • Pattern – Python 网络信息挖掘模块。
  • SnowNLP – 一个用来处理中文文本的库。
  • TextBlob – 为进行普通自然语言处理任务提供一致的 API。
  • TextGrocery – 一简单高效的短文本分类工具,基于 LibLinear 和 Jieba。

文档

用以生成项目文档的库。

  • Sphinx – Python 文档生成器。
  • MkDocs – 对 Markdown 友好的文档生成器。
  • pdoc – 一个可以替换Epydoc 的库,可以自动生成 Python 库的 API 文档。
  • Pycco – 文学编程(literate-programming)风格的文档生成器。

配置

用来保存和解析配置的库。

  • config – logging 模块作者写的分级配置模块。
  • ConfigObj – INI 文件解析器,带验证功能。
  • ConfigParser – (Python 标准库) INI 文件解析器。
  • profig – 通过多种格式进行配置,具有数值转换功能。
  • python-decouple – 将设置和代码完全隔离。

命令行工具

用于创建命令行程序的库。

  • 命令行程序开发
    • cement – Python 的命令行程序框架。
    • click – 一个通过组合的方式来创建精美命令行界面的包。
    • cliff – 一个用于创建命令行程序的框架,可以创建具有多层命令的命令行程序。
    • clint – Python 命令行程序工具。
    • colorama – 跨平台彩色终端文本。
    • docopt – Python 风格的命令行参数解析器。
    • Gooey – 一条命令,将命令行程序变成一个 GUI 程序。
    • python-prompt-toolkit – 一个用于构建强大的交互式命令行程序的库。
  • 生产力工具
    • 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 命令行工具,具有自动补全和语法高亮功能。

下载器

用来进行下载的库.

  • s3cmd – 一个用来管理Amazon S3 和 CloudFront 的命令行工具。
  • s4cmd – 超级 S3 命令行工具,性能更加强劲。
  • you-get – 一个 YouTube/Youku/Niconico 视频下载器,使用 Python3 编写。
  • youtube-dl – 一个小巧的命令行程序,用来下载 YouTube 视频。

图像处理

用来操作图像的库.

  • pillow – Pillow 是一个更加易用版的 PIL
  • hmap – 图像直方图映射。
  • imgSeek – 一个使用视觉相似性搜索一组图片集合的项目。
  • nude.py – 裸体检测。
  • pyBarcode – 不借助 PIL 库在 Python 程序中生成条形码。
  • pygram – 类似 Instagram 的图像滤镜。
  • python-qrcode – 一个纯 Python 实现的二维码生成器。
  • Quads – 基于四叉树的计算机艺术。
  • scikit-image – 一个用于(科学)图像处理的 Python 库。
  • thumbor – 一个小型图像服务,具有剪裁,尺寸重设和翻转功能。
  • wand – MagickWand的Python 绑定。MagickWand 是 ImageMagick的 C API 。

OCR

光学字符识别库。

音频

用来操作音频的库

  • 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 文件和回放功能。

视频

用来操作视频和GIF的库。

  • moviepy – 一个用来进行基于脚本的视频编辑模块,适用于多种格式,包括动图 GIFs。
  • scikit-video – SciPy 视频处理常用程序。

地理位置

地理编码地址以及用来处理经纬度的库。

  • GeoDjango – 世界级地理图形 web 框架。
  • GeoIP – MaxMind GeoIP Legacy 数据库的 Python API。
  • geojson – GeoJSON 的 Python 绑定及工具。
  • geopy – Python 地址编码工具箱。
  • pygeoip – 纯 Python GeoIP API。
  • django-countries – 一个 Django 应用程序,提供用于表格的国家选择功能,国旗图标静态文件以及模型中的国家字段。

HTTP

使用HTTP的库。

  • requests – 人性化的HTTP请求库。
  • grequests – requests 库 + gevent ,用于异步 HTTP 请求.
  • httplib2 – 全面的 HTTP 客户端库。
  • treq – 类似 requests 的Python API 构建于 Twisted HTTP 客户端之上。
  • urllib3 – 一个具有线程安全连接池,支持文件 post,清晰友好的 HTTP 库。

数据库

Python实现的数据库。

  • pickleDB – 一个简单,轻量级键值储存数据库。
  • PipelineDB – 流式 SQL 数据库。
  • TinyDB – 一个微型的,面向文档型数据库。
  • ZODB – 一个 Python 原生对象数据库。一个键值和对象图数据库。

数据库驱动

用来连接和操作数据库的库。

  • MySQL – awesome-mysql系列
    • mysql-python – Python 的 MySQL 数据库连接器。
    • mysqlclient – mysql-python 分支,支持 Python 3。
    • oursql – 一个更好的 MySQL 连接器,支持原生预编译指令和 BLOBs.
    • PyMySQL – 纯 Python MySQL 驱动,兼容 mysql-python。
  • PostgreSQL
    • psycopg2 – Python 中最流行的 PostgreSQL 适配器。
    • queries – psycopg2 库的封装,用来和 PostgreSQL 进行交互。
    • txpostgres – 基于 Twisted 的异步 PostgreSQL 驱动。
  • 其他关系型数据库
    • apsw – 另一个 Python SQLite封装。
    • dataset – 在数据库中存储Python字典 – 可以协同SQLite,MySQL,和 PostgreSQL工作。
    • pymssql- 一个简单的Microsoft SQL Server数据库接口。
  • NoSQL 数据库
    • cassandra-python-driver – Cassandra 的 Python 驱动。
    • HappyBase – 一个为 Apache HBase 设计的,对开发者友好的库。
    • Plyvel – 一个快速且功能丰富的 LevelDB 的 Python 接口。
    • py2neo – Neo4j restful 接口的Python 封装客户端。
    • pycassa – Cassandra 的 Python Thrift 驱动。
    • PyMongo – MongoDB 的官方 Python 客户端。
    • redis-py – Redis 的 Python 客户端。
    • telephus – 基于 Twisted 的 Cassandra 客户端。
    • txRedis – 基于 Twisted 的 Redis 客户端。

ORM

实现对象关系映射或数据映射技术的库。

  • 关系型数据库
  • NoSQL 数据库
    • django-mongodb-engine – Django MongoDB 后端。
    • PynamoDB – Amazon DynamoDB 的一个 Python 风格接口。
    • flywheel – Amazon DynamoDB 的对象映射工具。
    • MongoEngine – 一个Python 对象文档映射工具,用于 MongoDB。
    • hot-redis – 为 Redis 提供 Python 丰富的数据类型。
    • redisco – 一个 Python 库,提供可以持续存在在 Redis 中的简单模型和容器。
  • 其他
    • butterdb – Google Drive 电子表格的 Python ORM。

Web 框架

全栈 web 框架。

  • Django – Python 界最流行的 web 框架。
  • Flask – 一个 Python 微型框架。
  • Pyramid – 一个小巧,快速,接地气的开源Python web 框架。
  • Bottle – 一个快速小巧,轻量级的 WSGI 微型 web 框架。
  • CherryPy – 一个极简的 Python web 框架,服从 HTTP/1.1 协议且具有WSGI 线程池。
  • TurboGears – 一个可以扩展为全栈解决方案的微型框架。
  • web.py – 一个 Python 的 web 框架,既简单,又强大。
  • web2py – 一个全栈 web 框架和平台,专注于简单易用。
  • Tornado – 一个web 框架和异步网络库。

权限

允许或拒绝用户访问数据或功能的库。

  • Carteblanche – Module to align code with thoughts of users and designers. Also magically handles navigation and permissions.
  • django-guardian – Django 1.2+ 实现了单个对象权限。
  • django-rules – 一个小巧但是强大的应用,提供对象级别的权限管理,且不需要使用数据库。

CMS

内容管理系统

  • django-cms – 一个开源的,企业级 CMS,基于 Django。
  • djedi-cms – 一个轻量级但却非常强大的 Django CMS ,考虑到了插件,内联编辑以及性能。
  • FeinCMS – 基于 Django 构建的最先进的内容管理系统之一。
  • Kotti – 一个高级的,Python 范的 web 应用框架,基于 Pyramid 构建。
  • Mezzanine – 一个强大的,持续的,灵活的内容管理平台。
  • Opps – 一个为杂志,报纸网站以及大流量门户网站设计的 CMS 平台,基于 Django。
  • Plone – 一个构建于开源应用服务器 Zope 之上的 CMS。
  • Quokka – 灵活,可扩展的小型 CMS,基于 Flask 和 MongoDB。
  • Wagtail – 一个 Django 内容管理系统。
  • Widgy – 最新的 CMS 框架,基于 Django。

电子商务

用于电子商务以及支付的框架和库。

  • django-oscar – 一个用于 Django 的开源的电子商务框架。
  • django-shop – 一个基于 Django 的店铺系统。
  • Cartridge – 一个基于 Mezzanine 构建的购物车应用。
  • shoop – 一个基于 Django 的开源电子商务平台。
  • alipay – 非官方的 Python 支付宝 API。
  • merchant – 一个可以接收来自多种支付平台支付的 Django 应用。
  • money – 货币类库with optional CLDR-backed locale-aware formatting and an extensible currency exchange solution.
  • python-currencies – 显示货币格式以及它的数值。

RESTful API

用来开发RESTful APIs的库

  • Django
  • Flask
    • flask-api – 为 flask 开发的,可浏览 Web APIs 。
    • flask-restful – 为 flask 快速创建REST APIs 。
    • flask-restless – 为 SQLAlchemy 定义的数据库模型创建 RESTful APIs 。
    • flask-api-utils – 为 Flask 处理 API 表示和验证。
    • eve – REST API 框架,由 Flask, MongoDB 等驱动。
  • Pyramid
    • cornice – 一个Pyramid 的 REST 框架 。
  • 与框架无关的
    • falcon – 一个用来建立云 API 和 web app 后端的噶性能框架。
    • sandman – 为现存的数据库驱动系统自动创建 REST APIs 。
    • restless – 框架无关的 REST 框架 ,基于从 Tastypie 学到的知识。
    • ripozo – 快速创建 REST/HATEOAS/Hypermedia APIs。

验证

实现验证方案的库。

  • OAuth
    • Authomatic – 简单但是强大的框架,身份验证/授权客户端。
    • django-allauth – Django 的验证应用。
    • django-oauth-toolkit – 为 Django 用户准备的 OAuth2。
    • django-oauth2-provider – 为 Django 应用提供 OAuth2 接入。
    • Flask-OAuthlib – OAuth 1.0/a, 2.0 客户端实现,供 Flask 使用。
    • OAuthLib – 一个 OAuth 请求-签名逻辑通用、 完整的实现。
    • python-oauth2 – 一个完全测试的抽象接口。用来创建 OAuth 客户端和服务端。
    • python-social-auth – 一个设置简单的社会化验证方式。
    • rauth – OAuth 1.0/a, 2.0, 和 Ofly 的 Python 库。
    • sanction – 一个超级简单的OAuth2 客户端实现。
  • 其他
    • jose – JavaScript 对象签名和加密草案的实现。
    • PyJWT – JSON Web 令牌草案 01。
    • python-jws – JSON Web 签名草案 02 的实现。
    • python-jwt – 一个用来生成和验证 JSON Web 令牌的模块。

模板引擎

模板生成和词法解析的库和工具。

  • Jinja2 – 一个现代的,对设计师友好的模板引擎。
  • Chameleon – 一个 HTML/XML 模板引擎。 模仿了 ZPT(Zope Page Templates), 进行了速度上的优化。
  • Genshi – Python 模板工具,用以生成 web 感知的结果。
  • Mako – Python 平台的超高速轻量级模板。

Queue

处理事件以及任务队列的库。

  • celery – 一个异步任务队列/作业队列,基于分布式消息传递。
  • huey – 小型多线程任务队列。
  • mrq – Mr. Queue -一个 Python 的分布式 worker 任务队列, 使用 Redis 和 gevent。
  • rq – 简单的 Python 作业队列。
  • simpleq – 一个简单的,可无限扩张的,基于亚马逊 SQS 的队列。

搜索

对数据进行索引和执行搜索查询的库和软件。

动态消息

用来创建用户活动的库。

资源管理

管理、压缩、缩小网站资源的工具。

  • django-compressor – 将链接和内联的 JavaScript 或 CSS 压缩到一个单独的缓存文件中。
  • django-storages – 一个针对 Django 的自定义存储后端的工具集合。
  • fanstatic – 打包、优化,并且把静态文件依赖作为 Python 的包来提供。
  • File Conveyor – 一个后台驻留的程序,用来发现和同步文件到 CDNs, S3 和 FTP。
  • Flask-Assets – 帮你将 web 资源整合到你的 Flask app 中。
  • jinja-assets-compressor – 一个 Jinja 扩展,用来编译和压缩你的资源。
  • webassets – 为你的静态资源打包、优化和管理生成独一无二的缓存 URL。

缓存

缓存数据的库。

  • Beaker – 一个缓存和会话库,可以用在 web 应用和独立 Python脚本和应用上。
  • django-cache-machine – Django 模型的自动缓存和失效。
  • django-cacheops- 具有自动颗粒化事件驱动失效功能的 ORM。
  • django-viewlet – 渲染模板,同时具有额外的缓存控制功能。
  • dogpile.cache – dogpile.cache 是 Beaker 的下一代替代品,由同一作者开发。
  • HermesCache – Python 缓存库,具有基于标签的失效和 dogpile effect 保护功能。
  • johnny-cache – django应用缓存框架。
  • pylibmc – libmemcached 接口的 Python 封装。

电子邮件

用来发送和解析电子邮件的库。

  • django-celery-ses – 带有 AWS SES 和 Celery 的 Django email 后端。
  • envelopes – 供人类使用的电子邮件库。
  • flanker – 一个 email 地址和 Mime 解析库。
  • imbox – Python IMAP 库
  • inbox.py – Python SMTP 服务器。
  • inbox – 一个开源电子邮件工具箱。
  • lamson – Python 风格的 SMTP 应用服务器。
  • mailjet – Mailjet API 实现,用来提供批量发送邮件,统计等功能。
  • marrow.mailer – 高性能可扩展邮件分发框架。
  • modoboa – 一个邮件托管和管理平台,具有现代的、简约的 Web UI。
  • pyzmail – 创建,发送和解析电子邮件。
  • Talon – Mailgun 库,用来抽取信息和签名。

国际化

用来进行国际化的库。

  • Babel – 一个Python 的国际化库。
  • Korean – 一个韩语词态库。

URL处理

解析URLs的库

  • furl – 一个让处理 URL 更简单小型 Python 库。
  • purl – 一个简单的,不可变的URL类,具有简洁的 API 来进行询问和处理。
  • pyshorteners – 一个纯 Python URL 缩短库。
  • shorturl- 生成短小 URL 和类似 bit.ly 短链的Python 实现。
  • webargs – 一个解析 HTTP 请求参数的库,内置对流行 web 框架的支持,包括 Flask, Django, Bottle, Tornado和 Pyramid。

HTML处理

处理 HTML和XML的库。

  • BeautifulSoup – 以 Python 风格的方式来对 HTML 或 XML 进行迭代,搜索和修改。
  • bleach – 一个基于白名单的 HTML 清理和文本链接库。
  • cssutils – 一个 Python 的 CSS 库。
  • html5lib – 一个兼容标准的 HTML 文档和片段解析及序列化库。
  • lxml – 一个非常快速,简单易用,功能齐全的库,用来处理 HTML 和 XML。
  • MarkupSafe – 为Python 实现 XML/HTML/XHTML 标记安全字符串。
  • pyquery – 一个解析 HTML 的库,类似 jQuery。
  • untangle – 将XML文档转换为Python对象,使其可以方便的访问。
  • xhtml2pdf – HTML/CSS 转 PDF 工具。
  • xmltodict – 像处理 JSON 一样处理 XML。

网络站点爬取

爬取网络站点的库

  • Scrapy – 一个快速高级的屏幕爬取及网页采集框架。
  • cola – 一个分布式爬虫框架。
  • Demiurge – 基于PyQuery 的爬虫微型框架。
  • feedparser – 通用 feed 解析器。
  • Grab – 站点爬取框架。
  • MechanicalSoup – 用于自动和网络站点交互的 Python 库。
  • portia – Scrapy 可视化爬取。
  • pyspider – 一个强大的爬虫系统。
  • RoboBrowser – 一个简单的,Python 风格的库,用来浏览网站,而不需要一个独立安装的浏览器。

网页内容提取

用于进行网页内容提取的库。

  • Haul – 一个可以扩展的图像爬取工具。
  • html2text – 将 HTML 转换为 Markdown 格式文本
  • lassie – 人性化的网页内容检索库。
  • micawber -一个小型网页内容提取库,用来从 URLs 提取富内容。
  • newspaper – 使用 Python 进行新闻提取,文章提取以及内容策展。
  • opengraph – 一个用来解析开放内容协议(Open Graph Protocol)的 Python模块。
  • python-goose – HTML内容/文章提取器。
  • python-readability- arc90 公司 readability 工具的 Python 高速端口
  • sanitize – 为杂乱的数据世界带来调理性。
  • sumy – 一个为文本文件和 HTML 页面进行自动摘要的模块。
  • textract – 从任何格式的文档中提取文本,Word,PowerPoint,PDFs 等等。

表单

进行表单操作的库。

  • Deform – Python HTML 表单生成库,受到了 formish 表单生成库的启发。
  • django-bootstrap3- 集成了 Bootstrap 3 的 Django。
  • django-crispy-forms – 一个 Django 应用,他可以让你以一种非常优雅且 DRY(Don’t repeat yourself) 的方式来创建美观的表单。
  • django-remote-forms- 一个平台独立的 Django 表单序列化工具。
  • WTForms – 一个灵活的表单验证和呈现库。
  • WTForms-JSON- 一个 WTForms 扩展,用来处理 JSON 数据。

数据验证

数据验证库。多用于表单验证。

  • Cerberus – A mappings-validator with a variety of rules, normalization-features and simple customization that uses a pythonic schema-definition.
  • colander – 一个用于对从 XML, JSON,HTML 表单获取的数据或其他同样简单的序列化数据进行验证和反序列化的系统。
  • kmatch – 一种用于匹配/验证/筛选 Python 字典的语言。
  • schema -一个用于对 Python 数据结构进行验证的库。
  • Schematics – 数据结构验证。
  • valideer – 轻量级可扩展的数据验证和适配库。
  • voluptuous – 一个 Python 数据验证库。主要是为了验证传入 Python的 JSON,YAML 等数据。

反垃圾技术

帮助你和电子垃圾进行战斗的库。

标记

用来进行标记的库。

管理面板

管理界面库。

  • Ajenti – 一个你的服务器值得拥有的管理面板。
  • django-suit – Django 管理界面的一个替代品 (仅对于非商业用途是免费的)。
  • django-xadmin – Django admin 的一个替代品,具有很多不错的功能。
  • flask-admin – 一个用于 Flask 的简单可扩展的管理界面框架。
  • flower – 一个对 Celery 集群进行实时监控和提供 web 管理界面的工具。
  • Grappelli – Django 管理界面的一个漂亮的皮肤。
  • Wooey – 一个 Django 应用,可以为 Python 脚本创建 web 用户界面。

静态站点生成器

静态站点生成器是一个软件,它把文本和模板作为输入,然后输出HTML文件。

  • Pelican – 使用 Markdown 或 ReST 来处理内容, Jinja 2 来制作主题。支持 DVCS, Disqus.。AGPL 许可。
  • Cactus – 为设计师设计的静态站点生成器。
  • Hyde – 基于 Jinja2 的静态站点生成器。
  • Nikola – 一个静态网站和博客生成器。
  • Tinkerer – Tinkerer 是一个博客引擎/静态站点生成器,由Sphinx驱动。
  • Lektor – 一个简单易用的静态 CMS 和博客引擎。

进程

操作系统进程启动及通信库。

  • envoy – 比 Python subprocess 模块更人性化。
  • sarge – 另一 种 subprocess 模块的封装。
  • sh – 一个完备的 subprocess 替代库。

并发和并行

用以进行并发和并行操作的库。

  • multiprocessing – (Python 标准库) 基于进程的“线程”接口。
  • threading – (Python 标准库)更高层的线程接口。
  • eventlet – 支持 WSGI 的异步框架。
  • gevent – 一个基于协程的 Python 网络库,使用greenlet
  • Tomorrow -用于产生异步代码的神奇的装饰器语法实现。

网络

用于网络编程的库。

  • asyncio – (Python 标准库) 异步 I/O, 事件循环, 协程以及任务。
  • Twisted – 一个事件驱动的网络引擎。
  • pulsar – 事件驱动的并发框架。
  • diesel – 基于Greenlet 的事件 I/O 框架。
  • pyzmq – 一个 ZeroMQ 消息库的 Python 封装。
  • txZMQ – 基于 Twisted 的 ZeroMQ 消息库的 Python 封装。

WebSocket

帮助使用WebSocket的库。

  • AutobahnPython – 给 Python 、使用的 WebSocket & WAMP 基于 Twisted 和 asyncio
  • Crossbar – 开源统一应用路由(Websocket & WAMP for Python on Autobahn).
  • django-socketio – 给 Django 用的 WebSockets。
  • WebSocket-for-Python – 为Python2/3 以及 PyPy 编写的 WebSocket 客户端和服务器库。

WSGI 服务器

兼容 WSGI 的 web 服务器

  • gunicorn – Pre-forked, 部分是由 C 语言编写的。
  • uwsgi – uwsgi 项目的目的是开发一组全栈工具,用来建立托管服务, 由 C 语言编写。
  • bjoern – 异步,非常快速,由 C 语言编写。
  • fapws3 – 异步 (仅对于网络端),由 C 语言编写。
  • meinheld – 异步,部分是由 C 语言编写的。
  • netius – 异步,非常快速。
  • paste – 多线程,稳定,久经考验。
  • rocket – 多线程。
  • waitress – 多线程, 是它驱动着 Pyramid 框架。
  • Werkzeug – 一个 WSGI 工具库,驱动着 Flask ,而且可以很方便大嵌入到你的项目中去。

RPC 服务器

兼容 RPC 的服务器。

  • SimpleJSONRPCServer – 这个库是 JSON-RPC 规范的一个实现。
  • SimpleXMLRPCServer – (Python 标准库) 简单的 XML-RPC 服务器实现,单线程。
  • zeroRPC – zerorpc 是一个灵活的 RPC 实现,基于 ZeroMQ 和 MessagePack。

密码学

  • cryptography – 这个软件包意在提供密码学基本内容和方法提供给 Python 开发者。
  • hashids – 在 Python 中实现 hashids 。
  • Paramiko – SSHv2 协议的 Python (2.6+, 3.3+) ,提供客户端和服务端的功能。
  • Passlib – 安全密码存储/哈希库,
  • PyCrypto – Python 密码学工具箱。
  • PyNacl – 网络和密码学(NaCl) 库的 Python 绑定。

图形用户界面

用来创建图形用户界面程序的库。

  • curses – 内建的 ncurses 封装,用来创建终端图形用户界面。
  • enaml – 使用类似 QML 的Declaratic语法来创建美观的用户界面。
  • kivy – 一个用来创建自然用户交互(NUI)应用程序的库,可以运行在 Windows, Linux, Mac OS X, Android 以及 iOS平台上。
  • pyglet – 一个Python 的跨平台窗口及多媒体库。
  • PyQt – 跨平台用户界面框架 Qt 的 Python 绑定 ,支持Qt v4 和 Qt v5。
  • PySide – P跨平台用户界面框架 Qt 的 Python 绑定 ,支持Qt v4。
  • Tkinter – Tkinter 是 Python GUI 的一个事实标准库。
  • Toga – 一个 Python 原生的, 操作系统原生的 GUI 工具包。
  • urwid – 一个用来创建终端 GUI 应用的库,支持组件,事件和丰富的色彩等。
  • wxPython – wxPython 是 wxWidgets C++ 类库和 Python 语言混合的产物。
  • PyGObject – GLib/GObject/GIO/GTK+ (GTK+3) 的 Python 绑定
  • Flexx – Flexx 是一个纯 Python 语言编写的用来创建 GUI 程序的工具集,它使用 web 技术进行界面的展示。

游戏开发

超赞的游戏开发库。

  • Cocos2d – cocos2d 是一个用来开发 2D 游戏, 示例和其他图形/交互应用的框架。基于 pyglet。
  • Panda3D – 由迪士尼开发的 3D 游戏引擎,并由卡内基梅陇娱乐技术中心负责维护。使用C++编写, 针对 Python 进行了完全的封装。
  • Pygame – Pygame 是一组 Python 模块,用来编写游戏。
  • PyOgre – Ogre 3D 渲染引擎的 Python 绑定,可以用来开发游戏和仿真程序等任何 3D 应用。
  • PyOpenGL – OpenGL 的 Python 绑定及其相关 APIs。
  • PySDL2 – SDL2 库的封装,基于 ctypes。
  • RenPy – 一个视觉小说(visual novel)引擎。

日志

用来生成和操作日志的库。

  • logging – (Python 标准库) 为 Python 提供日志功能。
  • logbook – Logging 库的替代品。
  • Eliot – 为复杂的和分布式系统创建日志。
  • Raven – Sentry的 Python 客户端。
  • Sentry – 实时记录和收集日志的服务器。

测试

进行代码库测试和生成测试数据的库。

  • 测试框架
    • unittest – (Python 标准库) 单元测试框架。
    • nose – nose 扩展了 unittest 的功能。
    • contexts – 一个 Python 3.3+ 的 BDD 框架。受到C# – Machine.Specifications的启发。
    • hypothesis – Hypothesis 是一个基于先进的 Quickcheck 风格特性的测试库。
    • mamba – Python 的终极测试工具, 拥护BDD。
    • PyAutoGUI – PyAutoGUI 是一个人性化的跨平台 GUI 自动测试模块。
    • pyshould- Should 风格的断言,基于 PyHamcrest
    • pytest- 一个成熟的全功能 Python 测试工具。
    • green- 干净,多彩的测试工具。
    • pyvows- BDD 风格的测试工具,受Vows.js的启发。
    • Robot Framework – 一个通用的自动化测试框架。
  • Web 测试
    • Selenium – Selenium WebDriver 的 Python 绑定。
    • locust – 使用 Python 编写的,可扩展的用户加载测试工具。
    • sixpack – 一个和语言无关的 A/B 测试框架。
    • splinter – 开源的 web 应用测试工具。
  • Mock测试
    • mock – (Python 标准库) 一个用于伪造测试的库。
    • doublex – Python 的一个功能强大的 doubles 测试框架。
    • freezegun – 通过伪造日期模块来生成不同的时间。
    • httmock – 针对 Python 2.6+ 和 3.2+ 生成 伪造请求的库。
    • httpretty – Python 的 HTTP 请求 mock 工具。
    • responses – 伪造 Python 中的 requests 库的一个通用库。
    • VCR.py – 在你的测试中记录和重放 HTTP 交互。
  • 对象工厂
    • factoryboy – 一个 Python 用的测试固件 (test fixtures) 替代库。
    • mixer – 另外一个测试固件 (test fixtures) 替代库,支持 Django, Flask, SQLAlchemy, Peewee 等。
    • modelmommy – 为 Django 测试创建随机固件
  • 代码覆盖率
  • 伪数据
    • faker – 一个 Python 库,用来生成伪数据。
    • fake2db – 伪数据库生成器。
    • radar – 生成随机的日期/时间。
  • 错误处理
    • FuckIt.py – FuckIt.py 使用最先进的技术来保证你的 Python 代码无论对错都能继续运行。

代码分析和Lint工具

进行代码分析,解析和操作代码库的库和工具。

  • 代码分析
    • code2flow – 把你的 Python 和 JavaScript 代码转换为流程图。
    • pycallgraph -这个库可以把你的Python 应用的流程(调用图)进行可视化。
    • pysonar2 – Python 类型推断和检索工具。
  • Lint工具
    • Flake8 – 模块化源码检查工具: pep8, pyflakes 以及 co。
    • Pylint – 一个完全可定制的源码分析器。
    • pylama – Python 和 JavaScript 的代码审查工具。

调试工具

用来进行代码调试的库。

  • 调试器
    • ipdb – IPython 启用的 pdb
    • pudb – 全屏,基于控制台的 Python 调试器。
    • pyringe – 可以在 Python 进程中附加和注入代码的调试器。
    • wdb – 一个奇异的 web 调试器,通过 WebSockets 工作。
    • winpdb – 一个具有图形用户界面的 Python 调试器,可以进行远程调试,基于 rpdb2。
    • django-debug-toolbar – 为 Django 显示各种调试信息。
    • django-devserver – 一个 Django 运行服务器的替代品。
    • flask-debugtoolbar – django-debug-toolbar 的 flask 版。
  • 性能分析器
  • 其他

科学技术和数据分析

用来进行科学计算和数据分析的库。

  • astropy – 一个天文学 Python 库。
  • bcbio-nextgen – 这个工具箱为全自动高通量测序分析提供符合最佳实践的处理流程。
  • bccb – 生物分析相关代码集合
  • Biopython – Biopython 是一组可以免费使用的用来进行生物计算的工具。
  • blaze – NumPy 和 Pandas 的大数据接口。
  • cclib – 一个用来解析和解释计算化学软件包输出结果的库。
  • NetworkX – 一个为复杂网络设计的高性能软件。
  • Neupy – 执行和测试各种不同的人工神经网络算法。
  • Numba – Python JIT (just in time) 编译器,针对科学用的 Python ,由Cython 和 NumPy 的开发者开发。
  • NumPy – 使用 Python 进行科学计算的基础包。
  • Open Babel – 一个化学工具箱,用来描述多种化学数据。
  • Open Mining – 使用 Python 挖掘商业情报 (BI) (Pandas web 接口)。
  • orange – 通过可视化编程或 Python 脚本进行数据挖掘,数据可视化,分析和机器学习。
  • Pandas – 提供高性能,易用的数据结构和数据分析工具。
  • PyDy – PyDy 是 Python Dynamics 的缩写,用来为动力学运动建模工作流程提供帮助, 基于 NumPy, SciPy, IPython 和 matplotlib。
  • PyMC – 马尔科夫链蒙特卡洛采样工具。
  • RDKit – 化学信息学和机器学习软件。
  • SciPy – 由一些基于 Python ,用于数学,科学和工程的开源软件构成的生态系统。
  • statsmodels – 统计建模和计量经济学。
  • SymPy – 一个用于符号数学的 Python 库。
  • zipline – 一个 Python 算法交易库。

数据可视化

进行数据可视化的库。 参见: awesome-javascript

  • matplotlib – 一个 Python 2D 绘图库。
  • bokeh – 用 Python 进行交互式 web 绘图。
  • ggplot – ggplot2 给 R 提供的 API 的 Python 版本。
  • plotly – 协同 Python 和 matplotlib 工作的 web 绘图库。
  • pygal – 一个 Python SVG 图表创建工具。
  • pygraphviz – Graphviz 的 Python 接口。
  • PyQtGraph – 交互式实时2D/3D/图像绘制及科学/工程学组件。
  • SnakeViz – 一个基于浏览器的 Python’s cProfile 模块输出结果查看工具。
  • vincent – 把 Python 转换为 Vega 语法的转换工具。
  • VisPy – 基于 OpenGL 的高性能科学可视化工具。

计算机视觉

计算机视觉库。

  • OpenCV – 开源计算机视觉库。
  • SimpleCV – 一个用来创建计算机视觉应用的开源框架。

机器学习

机器学习库。 参见: awesome-machine-learning.

  • Crab – 灵活、快速的推荐引擎。
  • gensim – 人性化的话题建模库。
  • hebel – GPU 加速的深度学习库。
  • NuPIC – 智能计算 Numenta 平台。
  • pattern – Python 网络挖掘模块。
  • PyBrain – 另一个 Python 机器学习库。
  • Pylearn2 – 一个基于 Theano 的机器学习库。
  • python-recsys – 一个用来实现推荐系统的 Python 库。
  • scikit-learn – 基于 SciPy 构建的机器学习 Python 模块。
  • pydeep – Python 深度学习库。
  • vowpalporpoise – 轻量级 Vowpal Wabbit 的 Python 封装。
  • skflow – 一个 TensorFlow 的简化接口(模仿 scikit-learn)。

MapReduce

MapReduce 框架和库。

  • dpark – Spark 的 Python 克隆版,一个类似 MapReduce 的框架。
  • dumbo – 这个 Python 模块可以让人轻松的编写和运行 Hadoop 程序。
  • luigi – 这个模块帮你构建批处理作业的复杂流水线。
  • mrjob – 在 Hadoop 或 Amazon Web Services 上运行 MapReduce 任务。
  • PySpark – Spark 的 Python API 。
  • streamparse – 运行针对事实数据流的 Python 代码。集成了Apache Storm

函数式编程

使用 Python 进行函数式编程。

  • CyToolz – Toolz 的 Cython 实现 : 高性能函数式工具。
  • fn.py – 在 Python 中进行函数式编程 : 实现了一些享受函数式编程缺失的功能。
  • funcy – 炫酷又实用的函数式工具。
  • Toolz – 一组用于迭代器,函数和字典的函数式编程工具。

第三方 API

用来访问第三方 API的库。 参见: List of Python API Wrappers and Libraries

  • apache-libcloud – 一个为各种云设计的 Python 库。
  • boto – Amazon Web Services 的 Python 接口。
  • django-wordpress – WordPress models and views for Django.
  • facebook-sdk – Facebook 平台的 Python SDK.
  • facepy – Facepy 让和 Facebook’s Graph API 的交互变得更容易。
  • gmail – Gmail 的 Python 接口。
  • google-api-python-client – Python 用的 Google APIs 客户端库。
  • gspread – Google 电子表格的 Python API.
  • twython – Twitter API 的封装。

DevOps 工具

用于 DevOps 的软件和库。

  • Ansible – 一个非常简单的 IT 自动化平台。
  • SaltStack – 基础设施自动化和管理系统。
  • OpenStack – 用于构建私有和公有云的开源软件。
  • Docker Compose – 快速,分离的开发环境,使用 Docker。
  • Fabric – 一个简单的,Python 风格的工具,用来进行远程执行和部署。
  • cuisine – 为 Fabric 提供一系列高级函数。
  • Fabtools – 一个用来编写超赞的 Fabric 文件的工具。
  • gitapi – Git 的纯 Python API。
  • hgapi – Mercurial 的纯 Python API。
  • honcho – Foreman的 Python 克隆版,用来管理基于Procfile的应用。
  • pexpect – Controlling interactive programs in a pseudo-terminal like 在一个伪终端中控制交互程序,就像 GNU expect 一样。
  • psutil – 一个跨平台进程和系统工具模块。
  • supervisor – UNIX 的进程控制系统。

任务调度

任务调度库。

  • APScheduler – 轻巧但强大的进程内任务调度,使你可以调度函数。
  • django-schedule – 一个 Django 排程应用。
  • doit – 一个任务执行和构建工具。
  • gunnery – 分布式系统使用的多用途任务执行工具 ,具有 web 交互界面。
  • Joblib – 一组为 Python 提供轻量级作业流水线的工具。
  • Plan – 如有神助地编写 crontab 文件。
  • schedule – 人性化的 Python 任务调度库。
  • Spiff – 使用纯 Python 实现的强大的工作流引擎。
  • TaskFlow – 一个可以让你方便执行任务的 Python 库,一致并且可靠。

外来函数接口

使用外来函数接口的库。

  • cffi – 用来调用 C 代码的外来函数接口。
  • ctypes – (Python 标准库) 用来调用 C 代码的外来函数接口。
  • PyCUDA – Nvidia CUDA API 的封装。
  • SWIG – 简化的封装和接口生成器。

高性能

让 Python 更快的库。

  • Cython – 优化的 Python 静态编译器。使用类型混合使 Python 编译成 C 或 C++ 模块来获得性能的极大提升。
  • PeachPy – 嵌入 Python 的 x86-64 汇编器。可以被用作 Python 内联的汇编器或者是独立的汇编器,用于 Windows, Linux, OS X, Native Client 或者 Go 。
  • PyPy – 使用 Python 实现的 Python。解释器使用黑魔法加快 Python 运行速度且不需要加入额外的类型信息。
  • Pyston – 使用 LLVM 和现代 JIT 技术构建的 Python 实现,目标是为了获得很好的性能。
  • Stackless Python – 一个强化版的 Python。

微软的 Windows平台

在 Windows 平台上进行 Python 编程。

  • Python(x,y) – 面向科学应用的 Python 发行版,基于 Qt 和 Spyder。
  • pythonlibs – 非官方的 Windows 平台 Python 扩展二进制包。
  • PythonNet – Python 与 .NET 公共语言运行库 (CLR)的集成。
  • PyWin32 – 针对 Windows 的Python 扩展。
  • WinPython – Windows 7/8 系统下便携式开发环境。

网络可视化和SDN

用来进行网络可视化和SDN(软件定义网络)的工具和库。

  • Mininet – 一款流行的网络模拟器以及用 Python 编写的 API。
  • POX – 一个针对基于 Python 的软件定义网络应用(例如 OpenFlow SDN 控制器)的开源开发平台。
  • Pyretic – 火热的 SDN 编程语言中的一员,为网络交换机和模拟器提供强大的抽象能力。
  • SDX Platform – 基于 SDN 的 IXP 实现,影响了 Mininet, POX 和 Pyretic。

硬件

用来对硬件进行编程的库。

  • ino -操作Arduino的命令行工具。
  • Pyro – Python 机器人编程库。
  • PyUserInput – 跨平台的,控制鼠标和键盘的模块。
  • scapy – 一个非常棒的操作数据包的库。
  • wifi – 一个 Python 库和命令行工具用来在 Linux 平台上操作WiFi。
  • Pingo – Pingo 为类似Raspberry Pi,pcDuino, Intel Galileo等设备提供统一的API用以编程。

兼容性

帮助从 Python 2 向 Python 3迁移的库。

  • Python-Future – 这就是 Python 2 和 Python 3 之间丢失的那个兼容性层。
  • Python-Modernize – 使 Python 代码更加现代化以便最终迁移到 Python 3。
  • Six – Python 2 和 3 的兼容性工具。

杂项

不属于上面任何一个类别,但是非常有用的库。

  • blinker – 一个快速的 Python 进程内信号/事件分发系统。
  • itsdangerous – 一系列辅助工具用来将可信的数据传入不可信的环境。
  • pluginbase – 一个简单但是非常灵活的 Python 插件系统。
  • Pychievements – 一个用来创建和追踪成就的 Python 框架。
  • Tryton – 一个通用商务框架。

算法和设计模式

Python 实现的算法和设计模式。

编辑器插件

编辑器和 IDE 的插件

  • Emacs
    • Elpy – Emacs Python 开发环境。
  • Sublime Text
    • SublimeJEDI – 一个 Sublime Text 插件,用来使用超赞的自动补全库 Jedi。
    • Anaconda – Anaconda 把你的 Sublime Text 3 变成一个功能齐全的 Python IDE。
  • Vim
    • YouCompleteMe – 引入基于 Jedi 的 Python 自动补全引擎。
    • Jedi-vim – 绑定 Vim 和 Jedi 自动补全库对 Python 进行自动补全。
    • Python-mode – 将 Vim 变成 Python IDE 的一款多合一插件。
  • Visual Studio
    • PTVS – Visual Studio 的 Python 工具

集成开发环境

流行的 Python 集成开发环境。

  • PyCharm – 商业化的 Python IDE ,由 JetBrains 开发。也有免费的社区版提供。
  • LiClipse – 基于 Eclipse 的免费多语言 IDE 。使用 PyDev 来支持 Python 。
  • Spyder – 开源 Python IDE。

服务

在线工具和简化开发的 API 。

持续集成

参见: awesome-CIandCD.

  • Travis CI – 一个流行的工具,为你的开源和私人项目提供持续集成服务。(仅支持 GitHub)
  • CircleCI – 一个持续集成工具,可以非常快速的进行并行测试。 (仅支持 GitHub)
  • Vexor CI – 一个为私人 app 提供持续集成的工具,支持按分钟付费。
  • Wercker – 基于 Docker 平台,用来构建和部署微服务。

代码质量

  • Codacy – 自动化代码审查,更加快速的发布高质量代码。对于开源项目是免费的。
  • QuantifiedCode – 一个数据驱动、自动、持续的代码审查工具。

资源

在这里可以找到新的 Python 库。

网站

周刊

Twitter

Python 资源大全中文版

伯乐在线已在 GitHub 上发起「Python 资源大全中文版」的整理。欢迎扩散、欢迎加入。

GitHub - jobbole/awesome-python-cn: Python资源大全中文版,内容包括:Web框架、网络爬虫、网络内容提取、模板引擎、数据库、数据可视化、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析等

 

 

 

Chardet,字符编码探测器,可以自动检测文本、网页、xml的编码。
colorama,主要用来给文本添加各种颜色,并且非常简单易用。
Prettytable,主要用于在终端或浏览器端构建格式化的输出。
difflib,[Python]标准库,计算文本差异
Levenshtein,快速计算字符串相似度。
fuzzywuzzy,字符串模糊匹配。
esmre,正则表达式的加速器。
shortuuid,一组简洁URL/UUID函数库。
ftfy,Unicode文本工具
unidecode,ascii和Unicode文本转换函数。
xpinyin,将汉字转换为拼音的函数库
pangu.py,调整对中日韩文字当中的字母、数字间距。
pyfiglet,Python写的figlet程序,使用字符组成ASCII艺术图片
uniout,提取字符串中可读写的字符
awesome slugify,一个Python slugify库,用于处理Unicode。
python-slugify,转换Unicode为ASCII内码的slugify函数库。
unicode-slugify,生成unicode内码,Django的依赖包。
ply,Python版的lex和yacc的解析工具
phonenumbers,解析电话号码,格式,存储和验证的国际电话号码。
python-user-agents,浏览器的用户代理(user-agents)的解析器。
sqlparse,SQL解析器。
pygments,一个通用的语法高亮工具。
python-nameparser,解析人名,分解为单独的成分。
pyparsing,通用解析器生成框架。
tablib,表格数据格式,包括,XLS、CSV,JSON,YAML。
python-docx,docx文档读取,查询和修改,微软Word 2007 / 2008的docx文件。
xlwt/xlrd,读写Excel格式的数据文件。
xlsxwriter,创建Excel格式的xlsx文件。
xlwings,利用Python调用Excel
csvkit,CSV文件工具包。
marmir,把Python[数据结构],转化为电子表格。
pdfminer,从PDF文件中提取信息。
pypdf2, 合并和转换PDF页面的函数库。
Python-Markdown,轻量级标记语言Markdown的Python实现。
Mistune,,快速、全功能的纯Python编写的Markdown解释器。
dateutil,标准的Python官方datetime模块的扩展包,字符串日期工具,其中parser是根据字符串解析成datetime,而rrule是则是根据定义的规则来生成datetime。
arrow,更好的日期和时间处理Python库
chronyk,一个Python 3版函数库,用于解析人写的时间和日期。
delorean,清理期时间的函数库。
when.py,为见的日期和时间,提供人性化的功能。
moment,类似Moment.js的日期/时间Python库
pytz,世界时区,使用tz database时区信息[数据库]
BeautifulSoup ,基于Python的HTML/XML解析器,简单易用, 功能很强大,即使是有bug,有问题的html代码,也可以解析
lxml,快速,易用、灵活的HTML和XML处理库,功能超强,在遇到有缺陷、不规范的xml时,Python自带的xml处理器可能无法解析。报错时,程序会尝试再用lxml的修复模式解析。
htmlparser,官方版解析HTML DOM树,偶尔搞搞命令行自动表单提交用得上。
pyyaml,Python版本的YAML解释器。
html5lib,-标准库,解析和序列化HTML文档和片段。
pyquery,类似[jQuery]的的HTML解释器函数库。
cssutils,Python CSS库。
MarkupSafe,XML或HTML / XHTML安全字符串标记工具。
cssutils - A CSS library for Python., MarkupSafe - Implements a XML/HTML/XHTML Markup safe string for Python.,
bleach,漂白,基于HTML的白名单函数库。
xmltodict,类似JSON的XML工具包。
xhtml2pdf,HTML / CSS格式转换器,看生成pdf文档。
untangle,把XML文档,转换为Python对象,方便访问。




【文件处理】
Mimetypes,Python标准库,映射文件名到MIME类型。
imghdr,Python标准库,确定图像类型。
python-magic,libmagic文件类型识别库,Python接口格式。
path.py,os.path模块的二次封装。
watchdog,一组API和shell实用程序,用于监视文件系统事件。
Unipath,面向对象的文件/目录的操作工具包。
pathlib,-(Python 3.4版已经作为Python标准库),一个跨平台,面向path的函数库。
pickle/cPickle,python的pickle模块实现了基本的数据序列和反序列化。通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储;通过pickle模块的反序列化操作,我们能够从文件中创建上一次程序保存的对象。cPickle是[C语言]实现的版本,速度更快。
ConfigParser,Python标准库,INI文件解析器。
configobj,INI文件解析器。
config,分层次配置,logging作者编写。
profig,多格式配置转换工具。
logging ,Python标准库,日志文件生成管理函数库。
logbook,logging的替换品。
Sentry,实时log服务器。
Raven,哨兵Sentry的Python客户端。
Sphinx,斯芬克斯(狮身人面像),Python文档生成器。
reStructuredText,标记语法和解析工具,Docutils组件。
mkdocs,Markdown格式文档生成器。
pycco,简单快速、编程风格的文档生成器。
pdoc,自动生成的Python库API文档
epydoc,从源码注释中生成各种格式文档的工具




【图像处理】
PIL(Python Image Library),基于Python的图像处理库,功能强大,对图形文件的格式支持广泛,内置许多图像处理函数,如图像增强、滤波[算法]等
Pillow,图像处理库,PIL图像库的分支和升级替代产品。
Matplotlib,著名的绘图库,提供了整套和matlab相似的命令API,用以绘制一些高质量的数学二维图形,十分适合交互式地进行制图。
brewer2mpl,有一个专业的python配色工具包,提供了从美术角度来讲的精美配色。
PyGame 基于Python的多媒体开发和游戏软件开发模块,包含大量游戏和图像处理功能
Box2d,开源的2d物理引擎,愤怒的小鸟就是使用了这款物理引擎进行开发的,Box2d物理引擎内部模拟了一个世界,你可以设置这个世界里的重力,然后往这个世界里添加各种物体,以及他们的一些物理特性,比如质量,摩擦,阻尼等等。
Pymunk,类似box2d的开源物理图形模拟库
[OpenCV] , 目前最好的开源图像/视觉库,包括图像处理和计算机视觉方面、[机器学习]的很多通用算法。
SimpleCV,计算机视觉开源框架,类似opencv。
VTK,视觉化工具函式库(VTK, Visualization Toolkit)是一个开放源码,跨平台、支援平行处理(VTK曾用于处理大小近乎1个Petabyte的资料,其平台为美国Los Alamos国家实验室所有的具1024个处理器之大型系统)的图形应用函式库。2005年时曾被美国陆军研究实验室用于即时模拟俄罗斯制反导弹战车ZSU23-4受到平面波攻击的情形,其计算节点高达2.5兆个之多。
cgkit,Python Computer Graphics Kit,其module 主要分两个部分, 1. 与3d相关的一些python module 例如the vector, matrix and quaternion types, the RenderMan bindings, noise functions 这些模块可以在maya houdini nuke blender 等有Python扩展的程序中直接用; 2. 提供完整的场景操作的module, 他类似其他三维软件,在内存中保留完整的描述场景的信息。不能直接用于maya 等
CGAL,Computational Geometry Algorithms Library,计算几何算法库,提供计算几何相关的数据结构和算法,诸如三角剖分(2D约束三角剖分及二维和三维Delaunay三角剖分),Voronoi图(二维和三维的点,2D加权Voronoi图,分割Voronoi图等),多边形(布尔操作,偏置),多面体(布尔运算),曲线整理及其应用,网格生成(二维Delaunay网格生成和三维表面和体积网格生成等),几何处理(表面网格简化,细分和参数化等),凸壳算法(2D,3D和dD),搜索结构(近邻搜索,kd树等),插值,形状分析,拟合,距离等。
Aggdraw,开源图像库,几乎涵盖了2d image操作的所有功能,使用起来非常灵活
Pycairo,开源矢量绘图库Cairo开罗的python接口,cairo提供在多个背景下做2-D的绘图,高级的更可以使用硬件加速功能。
wand,Python绑定魔杖工具(MagickWand),C语言API接口。
thumbor, -智能成像工具,可调整大小和翻转图像。
imgSeek,查询相似的图像。
python-qrcode,纯Python的二维码(QR码)生成器。
pyBarcode,创建条码,无需PIL模块。
pygram,Instagram像图像过滤器。
Quads,基于四叉树的计算机艺术。
nude.py,裸体检测函数。
scikit-image ,scikit工具箱的图像处理库。,
hmap,图像直方图工具。
bokeh,交互的Web绘图。
plotly,Web协同的Python和Matplotlib绘制。
vincent,文森特,Python Vega的函数库。
d3py ,Python绘图库,基于D3.JS, ggplot -API兼容R语言的ggplot2.
Kartograph.py,在Python绘制漂亮的SVG地图。
pygal, SVG图表的创造者。
pygraphviz,Graphviz的Python接口。
Fonttlools,ttf字体工具函数包,用于fontforge、ttx等字体软件。




【游戏和多媒体】
audiolazy,数字信号处理(DSP)的Python工具包。
audioread,跨平台(GStreamer + Core Audio + MAD + FFmpeg)音频解码库。
beets,音乐库管理。
dejavu,音频指纹识别算法。Dejavu 听一次音频后就会记录该音频的指纹信息,然后可通过麦克风对输入的音频进行识别是否同一首歌。
django-elastic-transcoder,Django +亚马逊elastic转码。
eyeD3,音频文件工具,特别是MP3文件包含的ID3元数据。
id3reader,用于读取MP3的元数据。
mutagen,处理音频元数据。
pydub,-操纵音频和简单的高层次的接口。
pyechonest,Echo Nest API客户端。,
talkbox,语音和信号处理的Python库。
TimeSide,开放的网络音频处理框架。
tinytag,读取音乐文件元数据,包括的MP3,OGG,FLAC和wave文件。
m3u8,用于解析m3u8文件。
moviepy,多格式视频编辑脚本模块,包括GIF动画。
shorten.tv,视频摘要。
scikit视频,SciPy视频处理例程。
GeoDjango,一个世界级的地理Web框架。
geopy,Geo地理编码的工具箱。
pygeoip,纯Python写的GeoIP API。
GeoIP,Python API接口,使用高精度GeoIP Legacy Database数据库。
geojson,GeoJSON函数库
django-countries,一个Django程序,提供国家选择,国旗图标的静态文件,和一个国家的地域模型。
Pygame,Python游戏设计模块。
Cocos2d,2D游戏框架,演示,和其他的图形/交互应用,基于pyglet。
Cocos2d - cocos2d is a framework for building 2D games, demos, and other graphical/interactive applications. It is based on pyglet.,
PySDL2,SDL2的封装库。
Panda3D - 3D游戏引擎,迪士尼开发。用C++写的,完全兼容Python。
PyOgre,OGRE 3D渲染引擎,可用于游戏,模拟,任何3D。
PyOpenGL,绑定OpenGL和它相关的API。
PySFML,Python绑定SFML
RenPy,视觉小说引擎。




【[大数据]与科学计算】
pycuda/opencl,GPU高性能并发计算
Pandas,python实现的类似R语言的数据统计、分析平台。基于NumPy和Matplotlib开发的,主要用于数据分析和数据可视化,它的数据结构DataFrame和R语言里的data.frame很像,特别是对于时间序列数据有自己的一套分析机制,非常不错。
Open Mining,商业智能(BI),Pandas的Web界面。
blaze,NumPy和Pandas大数据界面。
SciPy,开源的Python算法库和数学工具包,SciPy包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算。其功能与软件MATLAB、Scilab和GNU Octave类似。 Numpy和Scipy常常结合着使用,Python大多数机器学习库都依赖于这两个模块。
ScientificPython,一组经过挑选的Python程序模块,用于科学计算,包括几何学(矢量、张量、变换、矢量和张量场),四元数,自动求导数,(线性)插值,多项式,基础统计学,非线性最小二乘拟合,单位计算,Fortran兼容的文本格式,通过VRML的3D显示,以及两个Tk小工具,分别用于绘制线图和3D网格模型。此外还具有到netCDF,MPI和BSPlib库的接口。
NumPy 科学计算库,提供了矩阵,线性代数,傅立叶变换等等的解决方案, 最常用的是它的N维数组对象. NumPy提供了两种基本的对象:ndarray(N-dimensional array object)和 ufunc(universal function object)。ndarray是存储单一数据类型的多维数组,而ufunc则是能够对数组进行处理的函数。
Cvxopt,最优化计算包,可进行线性规划、二次规划、半正定规划等的计算。
Numba,科学计算速度优化编译器。
pymvpa2,是为大数据集提供统计学习分析的Python工具包,它提供了一个灵活可扩展的框架。它提供的功能有分类、回归、特征选择、数据导入导出、可视化等
NetworkX,复杂网络的优化软件包。
zipline,交易算法的函数库。
PyDy, Python动态建模函数库。
SymPy,符号数学的Python库。
statsmodels,Python的统计建模和计量经济学。
astropy,天文学界的Python库。
orange,橙色,数据挖掘,数据可视化,通过可视化编程或Python脚本学习机分析。
RDKit,化学信息学和机器学习的软件。
Open Babel,巴贝尔,开放的化学工具箱。
cclib,化学软件包的计算函数库。
Biopython,免费的生物计算工具包。
bccb,生物分析相关的代码集。
bcbio-nextgen,提供完全自动化、高通量、测序分析的工具包。
visvis, 可视化计算模块库,可进行一维到四维数据的可视化。
MapReduce是Google提出的一个软件[架构],用于大规模数据集(大于1TB)的并行运算。概念“Map(映射)”和“Reduce(归纳)”,及他们的主要思想,都是从函数式编程语言借来的[1]
MapReduce函数库。Framworks and libraries for MapReduce.,
PySpark,[Spark]的Python API。
dpark,Spark的Python克隆,Python中的MapReduce框架。
luigi,为批量工作,建立复杂的管道。
mrjob,运行在[Hadoop],或亚马逊网络服务的,MapReduce工作。




【[人工智能]与机器学习】
NLTK(natural language toolkit),是python的自然语言处理工具包。2001年推出,包括了大量的词料库,以及自然语言处理方面的算法实现:分词, 词根计算, 分类, 语义分析等。
Pattern,数据挖掘模块,包括自然语言处理,机器学习工具,等等。
textblob,提供API为自然语言处理、分解NLP任务。基于NLTK和Pattern模块。
jieba,结巴,中文分词工具。
snownlp,用于处理中文文本库。
loso,中文分词函数库。
genius,中文CRF基础库,条件随机场(conditional random field,简称 CRF),是一种鉴别式机率模型,是随机场的一种,常用于标注或分析序列资料,如自然语言文字或是生物序列
Gensim,一个相当专业的主题模型Python工具包,无论是代码还是文档,可用于如何计算两个文档的相似度
LIBSVM,是台湾大学林智仁(Lin Chih-Jen)教授等开发设计的一个简单、易于使用和快速有效的SVM模式识别与回归的软件包,他不但提供了编译好的可在Windows系列系统的执行文件,还提供了源代码,方便改进、修改以及在其它[操作系统]上应用;该软件对SVM所涉及的参数调节相对比较少,提供了很多的默认参数,利用这些默认参数可以解决很多问题;并提供了交互检验(Cross Validation)的功能。该软件可以解决C-SVM、ν-SVM、ε-SVR和ν-SVR等问题,包括基于一对一算法的多类模式识别问题。
scikits.learn,构建在SciPy之上用于机器学习的 Python 模块。它包括简单而高效的工具,可用于数据挖掘和数据分析。涵盖分类,回归和聚类算法,例如SVM, 逻辑回归,朴素贝叶斯,随机森林,k-means等算法,代码和文档都非常不错,在许多Python项目中都有应用。例如在我们熟悉的NLTK中,分类器方面就有专门针对scikit-learn的接口,可以调用scikit-learn的分类算法以及训练数据来训练分类器模型。
PyMC,机器学习采样工具包,scikit-learn似乎是所有人的宠儿,有人认为,PyMC更有魅力。PyMC主要用来做Bayesian分析。
Orange,基于组件的数据挖掘和机器学习软件套装,它的功能即友好,又很强大,快速而又多功能的可视化编程前端,以便浏览数据分析和可视化,包含了完整的一系列的组件以进行数据预处理,并提供了数据帐目,过渡,建模,模式评估和勘探的功能。侧重数据挖掘,可以用可视化语言或Python进行操作,拥有机器学习组件,还具有生物信息学以及文本挖掘的插件。
Milk,机器学习工具箱,其重点是提供监督分类法与几种有效的分类分析:SVMs(基于libsvm),K-NN,随机森林经济和决策树。它还可以进行特征选择。这些分类可以在许多方面相结合,形成不同的分类系统。对于无监督学习,它提供K-means和affinity propagation聚类算法。
PyMVPA(Multivariate Pattern Analysis in Python),是为大数据集提供统计学习分析的Python工具包,它提供了一个灵活可扩展的框架。它提供的功能有分类、回归、特征选择、数据导入导出、可视化等
NuPIC,开源人工智能平台。该项目由Grok(原名 Numenta)公司开发,其中包括了公司的算法和软件架构。 NuPIC 的运作接近于人脑,“当模式变化的时候,它会忘掉旧模式,记忆新模式”。如人脑一样,CLA 算法能够适应新的变化。
Pylearn2,-基于Theano的机器学习库。
hebel,GPU加速,[深度学习]Python库。
gensim,机器学习库。
pybrain,机器学习模块,它的目标是为机器学习任务提供灵活、易应、强大的机器学习算法。pybrain包括神经网络、强化学习(及二者结合)、无监督学习、进化算法。以神经网络为核心,所有的训练方法都以神经网络为一个实例
Mahout,是 Apache Software Foundation(ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序。Mahout包含许多实现,包括聚类、分类、推荐过滤、频繁子项挖掘。此外,通过使用 Apache Hadoop 库,Mahout 可以有效地扩展到云中。
Crab,灵活的,快速的推荐引擎。
python-recsys,娱乐系统分析,推荐系统。
vowpalporpoise,Vowpal Wabbit轻量级Python封装。
Theano,用来定义、优化和模拟数学表达式计算,用于高效的解决多维数组的计算问题的python软件包。它使得写深度学习模型更加容易,同时也给出了一些关于在GPU上训练它们的选项。




【系统与命令行】
threading,Python标准线程库,更高级别的线程接口。
envoy,特使,Python子线程的函数库。
sh,成熟的子线程替换函数库。
sarge,封装线程。
subprocess,调用shell命令的神器
argparse,写命令行脚本必备,强大的命令行差数解析工具
timeit,计算代码运行的时间等等
unp,命令行工具,解压文件。
eventlet, 开销很少的多线程模块,使用的是 green threads 概念,例如,pool = eventlet.GreenPool(10000) 这样一条语句便创建了一个可以处理 10000 个客户端连接的线程池。类似Gevent线程库
Gevent,多线程模块
pytools,著名的python通用函数、工具包
SendKeys, 键盘鼠标操作模块, 模拟键盘鼠标模拟操作。
pyHook,基于Python的“钩子”库,主要用于监听当前电脑上鼠标和键盘的事件。这个库依赖于另一个Python库PyWin32,如同名字所显示的,PyWin32只能运行在Windows平台,所以PyHook也只能运行在Windows平台。
pstuil,跨平台地很方便获取和控制系统的进程,以及读取系统的CPU占用内存占用等信息.
cement,一个轻量级的、功能齐全的命令行工具
click,简单优雅的的命令行接口。
clint,Python命令行工具。
cliff,创造多层次指令的命令行程序框架。
Clime, 可以转换任何模块为多的CLI命令程序,无任何配置。
docopt,Python命令行参数分析器。
pycli,命令行应用程序,支持的标准命令行解析,测井,单元[测试]和功能测试。
Gooey,打开命令行程序,作为为一个完整的GUI应用程序,
cookiecutter,命令行工具,从cookiecutters(项目模板)创建项目。例如,Python包项目,jQuery插件项目。
percol,为UNIX传统管道pipe命令,添加交互式选择风格。
rainbowstream,聪明和漂亮的推特客户终端。
Django Models,Django的一部分
SQLAlchemy,Python SQL工具包和对象关系映射。
peewee,小型的ORM解析器。
PonyORM,为ORM提供了一种面向SQL的接口。
MongoEngine,Python对象文件映射,使用[MongoDB]。, Django MongoDB引擎MongoDB , Django后台。
django-mongodb-engine,Django后台.
redisco,一个简单的模型和容器库,使用[Redis]
flywheel,Amazon DynamoDB对象映射。
butterdb,谷歌电子表格的ORM,Python版。
celery,芹菜,异步任务队列/工作,基于分布式消息队列。
huey,休伊,轻量级,多线程任务队列。
mrq,队列先生,分布式任务队列,使用redis & Gevent。
rq,简单的工作队列。
Queue,Queue模块可以用来实现多线程间通讯,让各个线程共享数据,生产者把货物放到Queue中,供消费者(线程)去使用。
simpleq,简单的,可扩展的队列,Amazon SQS基础队列。
Psyco,超强的python性能优化工具,psyco 的神奇在于它只需要在代码的入口处调用短短两行代码,性能就能提升 40% 或更多,真可谓是立竿见影!如果你的客户觉得你的程序有点慢,敬请不要急着去优化代码,psyco 或许能让他立即改变看法。psyco 堪称 Python 的 jit。
fn.py,Python函数编程:缺失的功能享受FP的实现。
funcy,函数编程工具。
Toolz,函数编程工具:迭代器、函数,字典。
CyToolz,Toolz的Cython实现,高性能的函数编程工具。
Ansible,安塞波,极为简单的自动化平台。
SaltStack,基础设施的自动化管理系统。
Fabric,织物,一个简单,远程执行和部署的语言工具。
Fabtools,Fabric的工具函数。
cuisine,热门的Fabric的工具函数。
psutil,跨平台的过程和系统工具模块。
pexpect,控制互动节目。
provy,易于使用的配置系统的Python。
honcho,Foreman的Python接口,用于管理procfile应用工具。
gunnery,多任务执行工具,与网络接口的分布式系统。
fig,快速。独立的开发环境中使用泊坞窗。
APScheduler,轻量级、但功能强大的在线任务调度程序。
django-schedule,Django日程应用程序。
doit,任务流道/生成工具。
Joblib,Python提供的轻量级的流水线工具函数。
Plan,简易生成crontab文件。
Spiff,纯Python实现的,功能强大的工作流引擎。
schedule,Python作业调度。
TaskFlow,有助于使任务执行简单。
ctypes,Python标准库,速度更快,Python调用C代码的外部函数接口。
cffi,Python调用C代码外部函数接口,类似于ctypes直接在python程序中调用c程序,但是比ctypes更方便不要求编译成so再调用。
Cytoolz,python 加速库
SWIG,简化封装和接口生成器。,
Cython,Python优化静态编译器。
PyPy,Python解释器的 Python实现。
Stackless Python,一个增强版本的Python。它使程序员从基于线程的编程方式中获得好处,并避免传统线程所带来的性能与复杂度问题。Stackless为 Python带来的微线程扩展,是一种低开销、轻量级的便利工具
Pyston,使用LLVM和现代JIT技术,对python进行性能优化。
pythonlibs,非官方的Windows(32 / 64位)的Python扩展包
scapy,优秀的数据包处理库。
ino,Arduino命令行工具。
Pyro,Python的机器人工具包。
pluginbase,一个简单而灵活的Python的插件系统。
itsdangerous,数据安全传输工具。
blinker,快速Python中的信号/事件调度系统。
pychievements,用于创建和跟踪成果框架。
python-patterns,Python中的设计模式。
pefile Windows PE文件解析器
SIP,自动为C和C++库生成Python扩展模块的工具




【数据库】
MySQLdb,成熟的[MySQL]数据库模块,
Baresql,SQL数据库包
ZODB,Python本地对象数据库。一个K-V对象图数据库。
pickledb,简单和轻量级的K-V键值存储。
TinyDB, 轻量级,面向文档的数据库。
mysql-python,MySQL的Python工具库。
mysqlclient,mysql-python分支,支持Python 3.,
PyMySQL,纯Python写的 MySQL驱动程序,兼容mysql-python。
mysql-connector-python,MySQL连接器,来自[Oracle],纯Python编写。
oursql,MySQL连接器,提供本地话指令语句和BLOBs支持。
psycopg2,最流行的Python PostgreSQL适配器。
txpostgres,于Twisted的异步驱动,用于PostgreSQL。
queries,psycopg2函数库,用于PostgreSQL。
dataset,存储Python字典数据,用于SQLite,MySQL和PostgreSQL。
cassandra-python-driver,开源分布式NoSQL数据库系统Apache Cassandra系统的Python驱动.
pycassa,简化的cassandra数据库Python驱动。
HappyBase,友好的Apache [Hbase]的函数库。
PyMongo,MongoDB官方客户端。
Plyvel,LevelDB快速和功能丰富的Python接口。
redis-py,redis客户端。
py2neo,Python客户端(基于Neo4j的RESTful接口).
telephus,基于Twisted的cassandra客户端。
txRedis,基于Twisted的Redis客户端。




【网络】
Curl,Pycurl包是一个libcurl的Python接口,它是由C语言编写的。与urllib相比,它的速度要快很多。
Libcurl 是一个支持FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 和 LDAP的客户端URL传输库.libcurl也支持HTTPS认证,HTTP POST,HTTP PUT,FTP上传,代理,Cookies,基本身份验证,FTP文件断点继传,HTTP代理通道等等。
Requests,用Python语言编写,基于 urllib的开源 HTTP 库。它比 urllib 更加方便,更加 Pythoner。支持 Python3。
httpie,命令行HTTP客户端,用户友好的cURL的替换工具。
s3cmd,命令行工具,用于管理Amazon S3和CloudFront。
youtube-dl,命令行程序,从YouTube下载视频。
you-get,Python3写的视频下载工具,可用于YouTube/Youku优酷/Niconico视频下载
Coursera,从coursera.org下载视频,可重新命名文件
wikiteam,wiki下载工具。
subliminal,命令行工具,搜索和下载字幕的函数库
requests,HTTP函数库,更加人性化。
grequests,异步HTTP请求+ Gevent(高性能高并发函数库)。
urllib3,一个线程安全的HTTP连接池,支持文件post。
httplib2,综合HTTP的客户端函数库。
treq, Python API接口,Twisted的HTTP客户。
Mininet,流行的网络仿真器,API采用python编写。
POX,基于Python的开源软件定义网络(SDN)控制开发平台的应用,如OpenFlow的SDN控制器。
Pyretic,SDN的编程语言,提供了强大的抽象在网络交换机或仿真器。
SDX Platform,基于SDN的IXP实现,利用最小网络,痘和热。
inbox.py,Python的SMTP服务器。
imbox, Python版本IMAP库。
inbox,收件箱,开源邮件工具包。
lamson,SMTP服务器。
flanker,侧卫,电子邮件地址和MIME解析库。
marrow.mailer,高性能可扩展邮件交付框架。
django-celery-ses, Django电子邮件后台,使用AWS SES和Celery。
modoboa,邮件托管和管理平台,包括现代和简化Web UI。
envelopes,邮件工具。
mailjet,批量邮寄mailjet API接口,带统计。
Talon,利爪,Mailgun库,提取消息和签名。
mailjet - Mailjet API implementation for batch mailing, statistics and more., Talon - Mailgun library to extract message quotations and signatures.,
pyzmail,编写,发送和解析电子邮件。
furl,燃料,小型的的URL解析库库。
purl,简单的,干净的API,操纵URL。
pyshorteners,纯Python库,URL短网址编辑。
shorturl,短网址生成。
Scrapy,快速屏幕截取和网页抓取的框架。
portia,波西亚,Scrapy的可视化扩展。
feedparser,信息源解释器
RoboBrowser,简单的网页浏览Python函数库,没有使用Web浏览器。
MechanicalSoup,网站自动化互动测试工具包。
mechanize,网页浏览编程工具。
Demiurge,造物主,-PyQuery的轻量级工具。
newspaper,提取报纸新闻。
html2text,转换HTML为 Markdown格式的文本。
python-goose,HTML内容提取器。
lassie,莱西,人性化的网站内容检索。
micawber,通过UR抓提网页的函数库。
sumy,概要,文本和HTML网页的自动文摘模块。
Haul,距离,可扩展的图像爬虫。
python-readability,可读性工具Arc90,快速的Python接口。
opengraph,OpenGraph Protocol协议解析模块,
textract,从任何文件,Word,PowerPoint,PDF文件中提取文本,等。
sanitize,消毒,使混乱的数据变的理智。
AutobahnPython, WebSocket和WAMP的函数库,使用 Twisted和Python。
WebSocket-for-Python,websocket客户端和服务器端函数库。
SimpleXMLRPCServer,python标准库,简单的XML-RPC服务器,单线程。
SimpleJSONRPCServer,JSON-RPC规范实施函数库。
zeroRPC,基于ZeroMQ和MessagePack的RPC实现。
apache-libcloud,所有云服务的Python接口库。
wifi,WiFi -一套个Python库和命令行工具与WiFi,用于[Linux]。
streamparse,运行Python代码和数据的实时流。集成了Apache Storm。
boto,亚马逊网络服务接口。
twython,Twitter推特API。
google-api-python-client,谷歌客户端API。
gspread,谷歌电子表格的Python API。
facebook-sdk ,facebook平台Python SDK。
facepy,简易的facebook图形API
gmail,Gmail的Python接口。
django-wordpress,Django的WordPress的模型和视图。




【Web框架】
Django,最流行的Python-Web框架,鼓励快速开发,并遵循MVC设计,开发周期短
ActiveGrid 企业级的Web2.0解决方案
Karrigell 简单的Web框架,自身包含了Web服务,py脚本引擎和纯python的数据库PyDBLite
webpy 一个小巧灵活的Web框架,虽然简单但是功能强大
CherryPy 基于Python的Web应用程序开发框架
Pylons 基于Python的一个极其高效和可靠的Web开发框架
Zope 开源的Web应用服务器
TurboGears 基于Python的MVC风格的Web应用程序框架
Twisted 流行的网络编程库,大型Web框架
Quixote Web开发框架
Flask,轻量级web框架
Bottle,快速,简单和轻量级的WSGI模式Web框架。
Pyramid,轻量级,快速,稳定的开源Web框架。
web2py,简单易用的全堆栈Web框架和平台。
web.py,强大、简单的Web框架。
TurboGears,便于扩展的Web框架。
CherryPy,极简Python Web框架,支持,HTTP 1.1和WSGI线程池。
Grok,基于Zope3的Web框架。
Bluebream,开源的Web应用服务器,原名Zope 3。
guava,轻量级,高性能的Python-Web框架,采用c语言编写。
django-cms ,基于Django企业级开源CMS。
djedi-cms。轻量级但功能强大的Django CMS的插件,内联编辑和性能优化。
FeinCMS,基于Django的先进内容管理系统。
Kotte,高层次的Python的Web应用框架,基于Pyramid。
Mezzanine,强大,一致,灵活的内容管理平台。
Opps,基于Django的CMS,用于高流量的报纸、杂志和门户网站。
Plone,基于Zope的开源应用服务器Zope。
Quokka,灵活,可扩展的,轻量级的CMS系统,使用Flask和MongoDB。
Wagtail,Django内容管理系统。
Widgy,CMS框架,基于Django。
django-oscar,Django奥斯卡,开源的电子商务框架。
django-shop,基于Django的网店系统。
merchant,支持多种付款处理工具。
money,可扩展的货币兑换解决方案。
python-currencies,货币显示格式。
cornice,Pyramid的REST框架。
django-rest-framework ,Django框架,强大灵活的工具,可以很容易地构建Web API。
django-tastypie,创造精美的Django应用程序API接口。
django-formapi,创建JSON API、HMAC认证和Django表单验证。
flask-api,提供统一的浏览器体验,基于Django框架。
flask-api - An implementation of the same web browsable APIs that django-rest-framework provides.,
flask-restful,快速构建REST API支持扩展。
flask-api-utils,flask的扩展。
falcon,猎鹰,高性能的Python框架,构建云API和Web应用程序后端。
eve,夏娃,REST API框架,使用Flask,MongoDB和良好意愿。
sandman,睡魔,为现有的数据库驱动的系统,自动生成REST API。
restless,类似TastyPie的框架。
savory-pie,REST API构建函数库(Django,及其他)
Jinja2,现代设计师友好的语言模板。
Genshi,网络感知输出模板工具包。
Mako,马可,Python平台的超高速、轻型模板。
Chameleon,变色龙,一个HTML / XML模板引擎。仿照ZPT,优化速度。
Spitfire,快速的Python编译模板。
django-haystack,大海捞针,Django模块搜索。
elasticsearch-py,Elasticsearch官方低级的Python客户端。
solrpy,solr客户端。
Whoosh,呼,快速,纯Python搜索引擎库。
Feedly,建立新闻和通知系统的函数库,使用Cassandra和Redis。
Feedly - A library to build newsfeed and notification systems using Cassandra and Redis.,
django-activity-stream,Django活动流,从你网站上的行动,产生通用的活动流。
Beaker,烧杯,一个缓存和会话使用的Web应用程序,独立的Python脚本和应用程序库。
dogpile.cache,是Beaker作者的下一代替代作品。
HermesCache,Python的缓存库,基于标签的失效及预防Dogpile效果。
django-cache-machine,Django缓存机,自动缓存失效,使用ORM。
django-cacheops,自动颗粒事件驱动,ORM缓存失效。
johnny-cache,约翰尼高速缓存框架,Django应用程序。
django-viewlet,渲染模板部件扩展缓存控制。
pylibmc,在libmemcached接口。
WTForms-JSON ,JSON表单数据处理扩展。
Deform, HTML表单生成的函数库。
django-bootstrap3,bootstrap3,集成了Django。
django-crispy-forms,Django程序,可以创建优雅的表单。
django-remote-forms,Django的远程表单,Django表格的序列化程序。
django-simple-spam-blocker,Django简单的垃圾邮件拦截器。
django-simple-spam-blocker - Simple spam blocker for Django.,
django-simple-captcha,Django简单验证码,简单的和高度可定制的Django应用程序,用于添加验证码图像
django-simple-captcha - A simple and highly customizable Django app to add captcha images to any Django form., 回到顶部, Tagging,
Ajenti,服务器管理面板。
Grappelli,界面花哨的django皮肤。
django-suit,Django替代o界面(仅用于非商业用途)。
django-xadmin,Django管理面板替代工具。
Drop-in replacement of Django admin comes with lots of goodies.,
flask-admin,简单的flask管理界面框架
flower,实时监控和Web管理面板。
Pelican,鹈鹕,Markdown或ReST,字王内容主题。支持 DVCS, Disqus. AGPL。
Cactus,仙人掌,设计师的网站静态生成器。
Hyde,海德, 基于Jinja2的静态网站生成器。
Nikola,尼古拉-一个静态网站和博客生成器。
Tags,标签,最简单的静态网站生成器。
Tinkerer,工匠,基于Sphinx的静态网站生成器。
asyncio ,(在Python 3.4 +是Python标准库),异步I/O,事件循环,协同任务。
gevent,基于Python的网络库。
Twisted,扭曲,事件驱动的网络引擎。
Tornado,龙卷风,Web框架和异步网络的函数库。
pulsar,脉冲星,事件驱动的并行框架的Python。
diesel,柴油,绿色的,基于事件的I/O框架。
eventlet,WSGI支持异步框架。
pyzmq, 0MQ消息库的Python封装。
txZMQ,基于Twisted的0MQ消息库封
Crossbar,开源统一应用路由器(WebSocket和WAMP)。
wsgiref,Python标准库,WSGI封装实现,单线程。
Werkzeug,机床,WSGI工具函数库,很容易地嵌入到你自己的项目框架。
paste,粘贴,多线程,稳定的,久经考验的WSGI工具。
rocket,火箭,多线程服务,基于Pyramid。
netius,快速的、异步WSGI服务器,
gunicorn,forked前身,部分用C写的。
fapws3,异步网络,用C写的。
meinheld,异步WSGI服务器,是用C写的。
bjoern,-快速的、异步WSGI服务器,用C写的。




【安全】
Permissions函数库,允许或拒绝用户访问数据或函数。Libraries that allow or deny users access to data or functionality.
django-guardian,Django守护者,管理每个对象的权限,用于Django 1.2 +
Carteblanche ,管理导航和权限。
Authomatic,简单强大的认证/授权客户端。
OAuthLib, 通用,规范,OAuth请求签约工具。
rauth,用于OAuth 1.0,2.0,的Python库。
python-oauth2,利用全面测试,抽象接口来创建OAuth的客户端和服务器。
python-social-auth,易于安装的社会认证机制。,
django-oauth-toolkit,Django OAuth工具包
django-oauth2-provider,Django OAuth2工具包。
django-allauth,Django认证的应用程序。
Flask-OAuthlib,Flask的OAuth工具包
sanction,制裁,简单的oauth2客户端。
jose,[JavaScript]对象签名和加密(JOSE)草案实施,标记状态。
python-jwt,JSON的Web令牌生成和验证模块。
pyjwt,JSON的Web令牌草案01。
python-jws,JSON的Web令牌草案02。
PyCrypto,Python的加密工具包。
Paramiko,sshv2协议的实现,提供了客户端和服务器端的功能。
cryptography,密码开发工具包。
PyNac,网络和密码(NaCl)函数库。
hashids,hashids的 Python函数库。
Passlib,安全的密码存储/哈希库,非常高的水平。
hashlib,md5, sha等hash算法,用来替换md5和sha模块,并使他们的API一致。它由OpenSSL支持,支持如下算法:md5,sha1, sha224, sha256, sha384, sha512.






【GUI】
PyGtk,基于Python的GUI程序开发GTK+库
PyQt 用于Python的QT开发库
WxPython Python下的GUI编程框架,其消息机制与MFC的架构相似,入门非常简单,需要快速开发相关的应用可以使用这个
Tkinter Python下标准的界面编程包,因此不算是第三方库了
PySide,跨平台Qt的应用程序和用户界面框架,支撑Qt v4框架。
wxPython,混合wxWidgets的C++类库。
kivy,创建应用程序GUI函数库,看运行于Windows,Linux,MAC OS X,[Android]和[iOS]。
curse,用于创建终端GUI应用程序。
urwid,创建终端GUI应用程序窗体的函数库,支持事件,色彩丰富。
pyglet,跨平台的窗口和多媒体库的Python。
Tkinter,是Python事实上的标准GUI软件包。
enaml,创建漂亮的用户界面,语法类似QML。
Toga,托加,OS原生GUI工具包。




【构建封装】
pyenv,简单的Python版本管理。
virtualenv,创建独立的Python环境,用于同时安装不同版本的python环境。virtualenvwrapper,是virtualenv的一组扩展。
pew,一套管理多个虚拟环境的工具。
vex,使运行指定的virtualenv命令。
PyRun,一个单文件,无需安装的Python版本管理工具。
PIP,Python包和依赖的管理工具。
easyinstall,软件包管理系统,提供一个标准的分配Python软件和 函式库的格式。是一个附带设置工具的模块,和一个第三方函式库。旨在加快Python函式库的分配程式的速度。类似Ruby语言的RubyGems 。
conda,跨平台,二进制软件包管理器。,
Curdling,一个管理Python包的命令行工具。
wheel,Python发行的新标准,旨在替代eggs.
cx-Freeze,跨平台的,用于打包成可执行文件的库
py2exe, Windows平台的Freeze脚本工具,Py2exe ,将python脚本转换为windows上可以独立运行的可执行程序
py2app,MAC OS X平台的Freeze脚本工具
pyinstaller,-转换成独立的可执行文件的Python程序(跨平台)。
pynsist,构建Windows安装程序的工具,用Python编写。
dh-virtualenv,建立和分发virtualenv(Debian软件包格式)
PyPI,新一代的Python包库管理工具。
warehouse,新一代的Python包库(PyPI)管理工具。
devpi,PyPI服务器和包装/测试/发布工具。
localshop,PyPI官方包镜像服务器,支持本地(私人)包上传。
buildout,创建,组装和部署应用程序的多个部分,其中一些可能是非基于Python的。
SCons,软件构造工具。
platformio,一个控制台的工具,构建的代码可用于不同的开发平台。
bitbake,特殊设计的工具,用于创建和部署[嵌入式]Linux软件包
fabricate,自动为任何编程语言,生成依赖包。
django-compressor,Django压缩机,压缩和内联JavaScript或CSS,链接到一个单一的缓存文件。
jinja-assets-compressor,金贾压缩机,一个Jinja扩展,通过编译,压缩你的资源。
webassets,优化管理,静态资源,独特的缓存清除。
fanstatic,球迷,包优化,提供静态文件。
fileconveyor,监控资源变化,,可保存到CDN(内容分发网络)和文件系统。
django-storages,一组自定义存储Django后台。
glue,胶胶,一个简单的命令行工具,生成CSS Sprites。
libsass-python,Sass (层叠样式表)的Python接口。
Flask-Assets,整合应用程序资源。




【代码调试】
unittest,Python标准库,单元测试框架。
nose,鼻子,unittest延伸产品。
pytest,成熟的全功能的Python测试工具。
mamba,曼巴,Python的权威测试工具。出自BDD的旗下。
contexts,背景,BDD测试框架,基于C#。
pyshould,should风格的测试框架,基于PyHamcrest.
pyvows,BDD风格测试框架
Selenium,web测试框架,Python绑定Selenium。
splinter,分裂,测试Web应用程序的开源工具。
locust,刺槐,可扩展的用户负载测试工具,用Python写的。
sixpack,语言无关的A/B测试框架。
mock,模拟对象(英语:mock object,也译作模仿对象),模拟测试库。
responses,工具函数,用于mock模拟测试。
doublex -强大的测试框架。
freezegun,通过时间调整,测试模块。
httpretty, HTTP请求的模拟工具。
httmock,mock模拟测试。
coverage,代码覆盖度量测试。
faker,生成模拟测试数据的Python包。
mixer,混频器,产生模拟数据,用于Django ORM,SQLAlchemy,Peewee, MongoEngine, Pony ORM等
modelmommy,在Django创建测试随机工具。
ForgeryPy,易用的模拟数据发生器。
radar,雷达,生成随机日期/时间。
FuckIt.py,测试Python代码运行。
Code Analysispysonar2,Python类型索引。
Code Analysispysonar2 - A type inferencer and indexer for Python.,
pycallgraph,可视化的流量(调用图)应用程序。
code2flow,转换Python和JavaScript代码到流程图。
LinterFlake8,源代码模块检查器
pylama,Python和JavaScript代码审计工具。
Pylint,源代码分析器,它查找编程错误,帮助执行一个代码标准和嗅探一些代码味道。注意:相比于PyChecker,Pylint是一个高阶的Python代码分析工具,它分析Python代码中的错误。
Pyflakes,一个用于检查Python源文件错误的简单程序。Pyflakes分析程序并且检查各种错误。它通过解析源文件实现,无需导入。
pdb,Python标准库,Python调试器。
ipdb,IPython使用的PDB。
winpdb 独立于平台的GUI调试器。
pudb,全屏,基于python调试控制台。
pyringe,-可附着于及注入代码到Python程序的调试器。
python-statsd,statsd服务器客户端。
memory_profiler, 内存监视。
profiling,交互式Python分析器。
django-debug-toolbar, Django调试工具栏,显示各种调试信息:当前请求/响应。
django-devserver,Django调试工具。
flask-debugtoolbar,flask调试工具。

【为什么学PythonPython 是当今非常热门的语言之一,2020年的 TIOBE 编程语言排行榜中 ,Python名列第一,并且其流行度依然处在上升势头。 在2015年的时候,在网上还经常看到学Python还是学R的讨论,那时候老齐就选择了Python,并且开始着手出版《跟老齐学Python》。时至今日,已经无需争论。Python给我们带来的,不仅仅是项目上的收益,我们更可以从它“开放、简洁”哲学观念中得到技术发展路线的启示。 借此机会,老齐联合CSDN推出了本课程,希望能影响更多的人走进Python,踏入编程的大门。 【课程设计】 本课程共包含三大模块: 一、基础知识篇 内置对象和基本的运算、语句,是Python语言的基础。本课程在讲解这部分知识的时候,不是简单地将各种知识做简单的堆砌,而是在兼顾内容的全面性的同时,更重视向学习者讲授掌握有关知识的方法,比如引导学习者如何排查错误、如何查看和理解文档等。   二、面向对象篇 “面向对象(OOP)”是目前企业开发主流的开发方式,本课程从一开始就渗透这种思想,并且在“函数”和“类”的学习中强化面向对象开发方式的学习——这是本课程与一般课程的重要区别,一般的课程只在“类”这里才提到“对象”,会导致学习者茫然失措,并生畏惧,乃至于放弃学习。本课程则是从开始以“润物细无声”的方式,渗透对象概念,等学习到本部分的时候,OOP对学习者而言有一种“水到渠成”的感觉。   三、工具实战篇 在项目实战中,除了前述的知识之外,还会用到很多其他工具,至于那些工具如何安装?怎么自己做工具?有那些典型工具?都是这部分的内容。具体来说,就是要在这部分介绍Python标准的应用以及第三方包的安装,还有如何开发和发布自己的工具包。此外,很多学习Python的同学,未来要么从事数据科学、要么从事Web开发,不论哪个方向,都离不开对数据的操作,本部分还会从实战的角度,介绍如何用Python语言操作常用数据
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页