python程序员之道我爱编程

推荐一些相见恨晚的 Python 库 「一」

2017-08-14  本文已影响254人  xiyouMc

本文内容摘自 Github 上有名的 Awesome Python。这是由 vinta 在 14 年发起并持续维护的一个项目。

Awesome Python 涵盖了 Python 的方方面面,主要有 Web框架、网络爬虫、网络内容提取、模板引擎、数据库、图片处理、数据可视化、文本处理、自然语言处理、机器学习、日志、代码分析等。学会这些库,保证你在 Python 方面会有质的飞跃

以下内容是我基于 Awesome Python 和部分中文文档做出的翻译和归纳,由于内容过多,这篇只是归纳的第一部分,后续会持续更新。每个条目由 库名 + 装逼名言 + 链接 组成。

一、管理面板 ( Admin Panels)

Admin 面板的开源库

Ajenti - 你的服务器应该拥有的管理面板

https://github.com/ajenti/ajenti

django-suit - Django管理面板的替代品(非营利组织可免费使用)
http://djangosuit.com/

django-xadmin - 拥有很多不错功能的 Django Admin 替代品
https://github.com/sshwsfc/xadmin

flask-admin - 一个简单可扩展的 Flask 管理界面框架
https://github.com/flask-admin/flask-admin

flower - 一个 Celery 集群的实时监控和网页管理工具
https://github.com/mher/flower

Grappelli - Django 管理面板的一个非常骚气的皮肤
http://grappelliproject.com/

Wooey - Django的一个应用,可为 Python 脚本自动创建网页 UI
https://github.com/wooey/wooey

二、算法和设计模式 (Algorithms and Design Patterns)

Python 实现的一些算法和设计模式

algorithms - 一个 Python 的算法模块
https://github.com/nryoung/algorithms

PyPattyrn - 一个实现了常见设计模式的简单且有效的 Python 库
https://github.com/tylerlaberge/PyPattyrn

python-patterns - Python 设计模式的汇总
https://github.com/faif/python-patterns

sortedcontainers - 高效的,纯 Python 实现的 SortedList、SortedDict 和 SortedSet 类型。
http://www.grantjenks.com/docs/sortedcontainers/

三、反垃圾技术 ( Anti-spam )

一些与垃圾邮件对抗的库

django-simple-captcha - 一个简单、高效、可定制的 Django App,可以给任意 Django 表单添加验证码
https://github.com/mbi/django-simple-captcha

django-simple-span-blocker - 简单的垃圾邮件屏蔽组件
https://github.com/moqada/django-simple-spam-blocker

四、资源管理器 ( Asset Management )

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

django-compressor - 压缩链接和内联的 JavaScript 或者 CSS 到单独的缓存文件中
https://github.com/django-compressor/django-compressor

django-pipeline - Django 的资源打包库
https://github.com/jazzband/django-pipeline

django-storages - Django 的自定义存储后端的工具集合
https://github.com/jschneier/django-storages

fanstatic - 打包、优化并且将静态文件依赖作为 Python 的包来提供
http://www.fanstatic.org/en/latest/

fileconveyor - 用于检测和同步文件到 CDN、S3 和 FTP 的守护程序
http://wimleers.com/fileconveyor

flask-assets - 可以帮助你将网页资源集成到 Flask App 中
https://github.com/miracle2k/flask-assets

jinja-assets-compressor - 一个 Jinja 的扩展程序,用来编译和压缩你的资源
https://github.com/jaysonsantos/jinja-assets-compressor

webassets - 对你的静态资源进行打包、压缩、管理,并生成独一无二的缓存 URL
https://github.com/miracle2k/webassets

五、音频 ( Audio )

一些用来控制音频的库

audiolazy - Python 的 DSP (数字信号处理) 包
https://github.com/danilobellini/audiolazy

audioread - 交叉库(GStreamer + Core Audio + MAD + FFmpeg)音频解码
https://github.com/beetbox/audioread

beets - 一个音乐库管理工具以及 MusciBrainz 标签添加工具
http://beets.io/

ncmbot - 网易云音乐的 Python Api 库
http://xiyoumc.0x2048.com/ncmbot

dejavu - 音频指纹提取和识别
https://github.com/worldveil/dejavu

eyeD3- 一个用来操作音频文件的工具,包含 ID3 元文件的 MP3 文件
http://eyed3.nicfit.net/

id3reader - 一个用来读取 MP3 原始数据的 Python 库
https://nedbatchelder.com/code/modules/id3reader.py

m3u8 - 一个用来解析 m3u8 文件的模块
https://github.com/globocom/m3u8

mingus - 一个高级的音乐理论和曲谱包,支持 MIDI 文件和回访功能
http://bspaans.github.io/python-mingus/

mutagen - 一个用来处理音频原始数据的 Python 组件
https://github.com/quodlibet/mutagen

pyAudioAnalysis- Python 的音频分析库,包含:特征提取、分类、分段和应用
https://github.com/tyiannak/pyAudioAnalysis

pydub - 通过简单、高 Level 的接口来操作音频文件
https://github.com/jiaaro/pydub

pyechonest - Echo Nest API 的 Python 客户端
https://github.com/echonest/pyechonest

talkbox- 一个用来处理语音和信号的 Python 库
http://scikits.appspot.com/talkbox

TimeSide - 开源的 Web 音频处理框架
https://github.com/Parisson/TimeSide

tinytag - 一个用来读取 mp3 、ogg、flac 以及 Wave 文件原始数据的库。
https://github.com/devsnd/tinytag

六、授权

一些实现授权方案的库

OAuth
Authomatic - 简单但强大的框架,可以用来做身份验证和授权
http://peterhudec.github.io/authomatic/

django-allauth - Django 的 授权程序
https://github.com/pennersr/django-allauth

django-oauth-toolkit - Django 开发者的礼物, OAuth 2
https://github.com/evonove/django-oauth-toolkit

Flask-OAuthlib - 供 Flask 使用的 OAuth 1.0/a 和 2.0 的客户端实现
https://github.com/lepture/flask-oauthlib

OAuthLib - 通用且完整的 OAuth 请求和签名逻辑
https://github.com/idan/oauthlib

python-oauth2- 一个完全测试的抽象接口,用来创建 OAuth 客户端和服务端
https://github.com/joestump/python-oauth2

python-social-auth - 一个简单设置的通用化验证方式
https://github.com/omab/python-social-auth

rauth - OAuth 1.0/a 、2.0 和 Ofly 的 Python 库
https://github.com/omab/python-social-auth

sanction - 一个炒鸡简单的 OAuth2 客户端的实现
https://github.com/demianbrecht/sanction

Others
jose - 针对 JavaScript 对象签名和加密的草稿
https://github.com/demonware/jose

PyJWT - JSON Web 令牌草稿的实现01
https://github.com/jpadilla/pyjwt

python-jws - JSON Web 签名草稿的实现02
https://github.com/brianloveswords/python-jws

python-jwt - 一个用来生成和验证 JSON Web Token 的模块
https://github.com/davedoesdev/python-jwt

七、构建工具

将源代码编译为软件

BitBake - 类似于 Linux 的 make-file 的构建工具
http://www.yoctoproject.org/docs/1.6/bitbake-user-manual/bitbake-user-manual.html

buildout - 从多个组件来创建、组装和部署应用的构建系统
http://www.buildout.org/en/latest/

PlatformIO - 多平台构建工具
https://github.com/platformio/platformio-core

PyBuilder - 纯 Python 的可持续化构建工具
https://github.com/pybuilder/pybuilder

SCons - 软件构建工具
http://www.scons.org/

八、CMS

内存管理系统

django-cms - 一个基于 Django 的开源、企业级的 CMS 系统
https://www.django-cms.org/en/

djedi-cms - 一个轻量级且非常强大的 Django CMS,考虑到了插件、内联编辑以及性能
http://djedi-cms.org/

FeinCMS - 基于 Django 构建的最高级的内容管理系统之一。
http://www.feincms.org/

Kotti - 基于Pyramid 的高 Level 、Pythonic 的 Web 应用框架
http://kotti.pylonsproject.org/

Mezzanine - 一个强大的、可持续的、灵活的内容管理平台
http://mezzanine.jupo.org/

Opps - 一个基于 Django 为杂志、报纸网站以及大流量门户网站所设计的 CMS 平台
http://opps.github.io/opps/

Plone - 一个构建于开源应用服务器 Zope 之上的 CMS 平台
https://plone.org/

Quokka - 基于 Flask 和 MongoDB 的灵活、可扩展的小型 CMS
http://quokkaproject.org/

Wagtail - 一个 Django 内容管理系统
https://wagtail.io/

Widgy - 基于 Django 的最新 CMS 框架
http://mezzanine.jupo.org/

九、Caching

缓存数据的库

Beaker - 一个应用在 Web 程序、独立的Python 脚本和应用程序的缓存和会话库
https://github.com/bbangert/beaker

DiskCache - SQLite 和文件支持的缓存后端,具有比 memcached 和 redis 更快的查找
http://www.grantjenks.com/docs/diskcache/

django-cache-machine - Django 模块的自动化缓存和时效
https://github.com/django-cache-machine/django-cache-machine

django-cacheops - 具有自动粒度时间驱动失效的 ORM 缓存
https://github.com/Suor/django-cacheops

django-viewlet - 具有缓存控制功能的渲染模板组件
https://github.com/5monkeys/django-viewlet

dogpile.cache - 这是 Beaker 的下一代替代品,由同一作者开发
http://dogpilecache.readthedocs.io/en/latest/

HermesCache - Python 缓存库,具有基于标签的失效和 dogpile effect 保护功能
https://pypi.python.org/pypi/HermesCache

johnny-cache - Django 应用的一个缓存框架
https://github.com/jmoiron/johnny-cache

pylibmc - libmemcached 接口的 Python 封装
https://github.com/lericson/pylibmc

十、ChatOps Tools

用于开发聊天机器人的库

Errbot - 用来实现自动聊天工具的,最简单、最流行的聊天机器人
http://errbot.io/en/latest/

十一、Code Analysis and Linter

进行代码分析、解析和操作代码库的组件和工具
代码分析

coala - 语言独立并且易扩展的代码分析应用
http://coala.io/

code2flow - 将你的 Python 和 JavaScript 代码转换为 DOT(流程图)的工具
https://github.com/scottrogowski/code2flow

pycallgraph - 这个库可以将你的 Python 应用的调用图进行可视化
https://github.com/gak/pycallgraph

pysonar2 - Python 的类型推断和检索工具
https://github.com/yinwang0/pysonar2

十二、Linter 工具

Flake8 - 模块化源代码检索工具:pep8、pyflakes 以及 co
https://pypi.python.org/pypi/flake8

pylama - Pyhton 和 JavaScript 的代码审查工具
https://github.com/scottrogowski/code2flow

Pylint - 一个完整的可定制的源代码分析工具
https://www.pylint.org/

匆匆忙忙,新的一周又开始,希望第一部分的库能帮助到你的工作。当然,后续会继续跟新。

阅读原文是 Awesome Python 的源代码。

长摁‘识别二维码’,一起进步

生活不止眼前的苟且,还有手下的代码、
和嘴上的扯淡
——
个人博客: http://xiyoumc.0x2048.com
Github:https://www.github.com/xiyouMc

上一篇 下一篇

猜你喜欢

热点阅读