awesome-python
一些Python相关的框架、代码、资源、库的集合
https://github.com/wyfish/awesome-python
Last synced: 8 days ago
JSON representation
-
Data Visualization
- awesome-javascript
- PyGraphviz - Python interface to [Graphviz](http://www.graphviz.org/).
- ggplot - Same API as ggplot2 for R.
- Seaborn - Statistical data visualization using Matplotlib.
- Bokeh - Interactive Web Plotting for Python.
- VisPy - High-performance scientific visualization based on OpenGL.
- awesome-dash
- Altair - Declarative statistical visualization library for Python.
- PyGraphviz - Python interface to [Graphviz](http://www.graphviz.org/).
- Matplotlib - A Python 2D plotting library.
- PyQtGraph - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.
- bqplot - Interactive Plotting Library for the Jupyter Notebook
-
Networking
- awesome-asyncio
- asyncio - (Python standard library) Asynchronous I/O, event loop, coroutines and tasks.
- pyzmq - A Python wrapper for the ZeroMQ message library.
- pulsar - Event-driven concurrent framework for Python.
- napalm - Cross-vendor API to manipulate network devices.
-
Web Frameworks
- awesome-pyramid
- Vibora - Fast, efficient and asynchronous Web framework inspired by Flask.
- Django - The most popular web framework in Python.
- Pyramid - A small, fast, down-to-earth, open source Python web framework.
- awesome-flask
- Masonite - The modern and developer centric Python web framework.
- awesome-django
- Sanic - Web server that's written to go fast.
- Flask - A microframework for Python.
-
Machine Learning
- awesome-machine-learning
- H2O - Open Source Fast Scalable Machine Learning Platform.
- xgboost - A scalable, portable, and distributed gradient boosting library.
- Metrics - Machine learning evaluation metrics.
- vowpal_porpoise - A lightweight Python wrapper for [Vowpal Wabbit](https://github.com/JohnLangford/vowpal_wabbit/).
- scikit-learn - The most popular Python library for Machine Learning.
- NuPIC - Numenta Platform for Intelligent Computing.
-
Deep Learning
- awesome-deep-learning
- tensorflow - The most popular Deep Learning framework created by Google.
- keras - A high-level neural networks library and capable of running on top of either TensorFlow or Theano.
- Theano - A library for fast numerical computation.
- caffe - A fast open framework for deep learning..
- pytorch - Tensors and Dynamic neural networks in Python with strong GPU acceleration.
- SerpentAI - Game agent framework. Use any video game as a deep learning sandbox.
- mxnet - A deep learning framework designed for both efficiency and flexibility.
-
ORM
- awesome-sqlalchemy
- Django Models - A part of Django.
- SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper.
- peewee - A small, expressive ORM.
- dataset - Store Python dicts in a database - works with SQLite, MySQL, and PostgreSQL.
- PynamoDB - A Pythonic interface for [Amazon DynamoDB](https://aws.amazon.com/dynamodb/).
- mongoengine - A Python Object-Document-Mapper for working with MongoDB.
- orator - The Orator ORM provides a simple yet beautiful ActiveRecord implementation.
- redisco - A Python Library for Simple Models and Containers Persisted in Redis.
- hot-redis - Rich Python data types for Redis.
- pony - ORM that provides a generator-oriented interface to SQL.
- pydal - A pure Python Database Abstraction Layer.
-
Database Drivers
- awesome-postgres
- psycopg2 - The most popular PostgreSQL adapter for Python.
- py2neo - Python wrapper client for Neo4j's restful interface.
- pymssql - A simple database interface to Microsoft SQL Server.
- PyMySQL - A pure Python MySQL driver compatible to mysql-python.
- kafka-python - The Python client for Apache Kafka.
- motor - The async Python driver for MongoDB.
- pymongo - The official Python client for MongoDB.
- cassandra-driver - The Python Driver for Apache Cassandra.
- queries - A wrapper of the psycopg2 library for interacting with PostgreSQL.
- txRedis - Twisted based client for Redis.
- Telephus - Twisted based client for Cassandra.
- txpostgres - Twisted based asynchronous driver for PostgreSQL.
- awesome-mysql
- pymssql - A simple database interface to Microsoft SQL Server.
- mysqlclient - MySQL connector with Python 3 support ([mysql-python](https://sourceforge.net/projects/mysql-python/) fork).
- py2neo - Python wrapper client for Neo4j's restful interface.
- happybase - A developer-friendly library for Apache HBase.
- redis-py - The Python client for Redis.
-
Interactive Interpreter
- awesome-jupyter
- bpython - A fancy interface to the Python interpreter.
- ptpython - Advanced Python REPL built on top of the [python-prompt-toolkit](https://github.com/jonathanslenders/python-prompt-toolkit).
-
Editor Plugins and IDEs
- PyCharm - Commercial Python IDE by JetBrains. Has free community edition available.
- Python - The official VSCode extension with rich support for Python.
- jedi-vim - Vim bindings for the Jedi auto-completion library for Python.
- spyder - Open Source Python IDE.
- python-mode - An all in one plugin for turning Vim into a Python IDE.
- anaconda - Anaconda turns your Sublime Text 3 in a full featured Python development IDE.
- SublimeJEDI - A Sublime Text plugin to the awesome auto-complete library Jedi.
- elpy - Emacs Python Development Environment.
- PTVS - Python Tools for Visual Studio.
- YouCompleteMe - Includes [Jedi](https://github.com/davidhalter/jedi)-based completion engine for Python.
-
Downloader
- you-get - A YouTube/Youku/Niconico video downloader written in Python 3.
- s3cmd - A command line tool for managing Amazon S3 and CloudFront.
- s4cmd - Super S3 command line tool, good for higher performance.
- youtube-dl - A small command-line program to download videos from YouTube.
-
Admin Panels
- django-grappelli - A jazzy skin for the Django Admin-Interface.
- django-suit - Alternative Django Admin-Interface (free only for Non-commercial use).
- ajenti - The admin panel your servers deserve.
- django-jet - Modern responsive template for the Django admin interface with improved functionality.
- django-xadmin - Drop-in replacement of Django admin comes with lots of goodies.
- flower - Real-time monitor and web admin for Celery.
- wooey - A Django app which creates automatic web UIs for Python scripts.
- flask-admin - Simple and extensible administrative interface framework for Flask.
-
Build Tools
- buildout - A build system for creating, assembling and deploying applications from multiple parts.
- PlatformIO - A console tool to build code with different development platforms.
- pybuilder - A continuous build tool written in pure Python.
- buildout - A build system for creating, assembling and deploying applications from multiple parts.
- SCons - A software construction tool.
-
Built-in Classes Enhancement
- dataclasses - (Python standard library) Data classes.
- bidict - Efficient, Pythonic bidirectional map data structures and related functionality..
- attrs - Replacement for `__init__`, `__eq__`, `__repr__`, etc. boilerplate in class definitions.
- Box - Python dictionaries with advanced dot notation access.
- DottedDict - A library that provides a method of accessing lists and dicts with a dotted path notation.
-
CMS
- django-cms - An Open source enterprise CMS based on the Django.
- plone - A CMS built on top of the open source application server Zope.
- mezzanine - A powerful, consistent, and flexible content management platform.
- feincms - One of the most advanced Content Management Systems built on Django.
- Kotti - A high-level, Pythonic web application framework built on Pyramid.
- wagtail - A Django content management system.
- quokka - Flexible, extensible, small CMS powered by Flask and MongoDB.
-
Caching
- HermesCache - Python caching library with tag-based invalidation and dogpile effect prevention.
- django-cacheops - A slick ORM cache with automatic granular event-driven invalidation.
- django-cache-machine - Automatic caching and invalidation for Django models.
- beaker - A WSGI middleware for sessions and caching.
- pylibmc - A Python wrapper around the [libmemcached](https://libmemcached.org/libMemcached.html) interface.
- HermesCache - Python caching library with tag-based invalidation and dogpile effect prevention.
-
Code Analysis
- pylint - A fully customizable source code analyzer.
- yapf - Yet another Python code formatter from Google.
- pyre-check - Performant type checking.
- MonkeyType - A system for Python that generates static type annotations by collecting runtime types
- pycallgraph - A library that visualises the flow (call graph) of your Python application.
- pylama - A code audit tool for Python and JavaScript.
- code2flow - Turn your Python and JavaScript code into DOT flowcharts.
- black - The uncompromising Python code formatter.
- awesome-static-analysis
- prospector - A tool to analyse Python code.
- flake8 - A wrapper around `pycodestyle`, `pyflakes` and McCabe.
- coala - Language independent and easily extendable code analysis application.
- mypy - Check variable types during compile time.
-
Command-line Interface Development
- docopt - Pythonic command line arguments parser.
- colorama - Cross-platform colored terminal text.
- python-fire - A library for creating command line interfaces from absolutely any Python object.
- tqdm - Fast, extensible progress bar for loops and CLI.
- asciimatics - A package to create full-screen text UIs (from interactive forms to ASCII animations).
- bashplotlib - Making basic plots in the terminal.
- clint - Python Command-line Application Tools.
- docopt - Pythonic command line arguments parser.
- cliff - A framework for creating command-line programs with multi-level commands.
- colorama - Cross-platform colored terminal text.
- cement - CLI Application Framework for Python.
- python-prompt-toolkit - A library for building powerful interactive command lines.
-
Compatibility
- six - Python 2 and 3 compatibility utilities.
- python-modernize - Modernizes Python code for eventual Python 3 migration.
- six - Python 2 and 3 compatibility utilities.
-
Computer Vision
- OpenCV - Open Source Computer Vision Library.
- SimpleCV - An open source framework for building computer vision applications.
- pytesseract - Another wrapper for [Google Tesseract OCR](https://github.com/tesseract-ocr).
- SimpleCV - An open source framework for building computer vision applications.
-
Concurrency and Parallelism
- concurrent.futures - (Python standard library) A high-level interface for asynchronously executing callables.
- eventlet - Asynchronous framework with WSGI support.
- gevent - A coroutine-based Python networking library that uses [greenlet](https://github.com/python-greenlet/greenlet).
- multiprocessing - (Python standard library) Process-based parallelism.
- uvloop - Ultra fast implementation of `asyncio` event loop on top of `libuv`.
- scoop - Scalable Concurrent Operations in Python.
- eventlet - Asynchronous framework with WSGI support.
-
Configuration
- configparser - (Python standard library) INI file parser.
- profig - Config from multiple formats with value conversion.
- configobj - INI file parser with validation.
- python-decouple - Strict separation of settings from code.
-
Cryptography
- cryptography - A package designed to expose cryptographic primitives and recipes to Python developers.
- passlib - Secure password storage/hashing library, very high level.
- pynacl - Python binding to the Networking and Cryptography (NaCl) library.
- paramiko - The leading native Python SSHv2 protocol library.
-
Data Analysis
- Pandas - A library providing high-performance, easy-to-use data structures and data analysis tools.
- Blaze - NumPy and Pandas interface to Big Data.
- Open Mining - Business Intelligence (BI) in Pandas interface.
- Orange - Data mining, data visualization, analysis and machine learning through visual programming or scripts.
- Optimus - Agile Data Science Workflows made easy with PySpark.
-
Data Validation
- colander - Validating and deserializing data obtained via XML, JSON, an HTML form post.
- Schematics - Data Structure Validation.
- schema - A library for validating Python data structures.
- Cerberus - A lightweight and extensible data validation library.
- voluptuous - A Python data validation library.
- valideer - Lightweight extensible data validation and adaptation library.
- jsonschema - An implementation of [JSON Schema](http://json-schema.org/) for Python.
-
Date and Time
- pytz - World timezone definitions, modern and historical. Brings the [tz database](https://en.wikipedia.org/wiki/Tz_database) into Python.
- when.py - Providing user-friendly functions to help perform common date and time actions.
- maya - Datetimes for Humans.
- dateutil - Extensions to the standard Python [datetime](https://docs.python.org/3/library/datetime.html) module.
- moment - A Python library for dealing with dates/times. Inspired by [Moment.js](http://momentjs.com/).
- Chronyk - A Python 3 library for parsing human-written times and dates.
- PyTime - A easy-use Python module which aims to operate date/time/datetime by string.
- delorean - A library for clearing up the inconvenient truths that arise dealing with datetimes.
- Pendulum - Python datetimes made easy.
-
DevOps Tools
- cloudinit - A multi-distribution package that handles early initialization of a cloud instance.
- OpenStack - Open source software for building private and public clouds.
- docker-compose - Fast, isolated development environments using [Docker](https://www.docker.com/).
- supervisor - Supervisor process control system for UNIX.
- ansible - A radically simple IT automation platform.
- saltstack - Infrastructure automation and management system.
- fabric - A simple, Pythonic tool for remote execution and deployment.
- psutil - A cross-platform process and system utilities module.
- pexpect - Controlling interactive programs in a pseudo-terminal like GNU expect.
- honcho - A Python clone of [Foreman](https://github.com/ddollar/foreman), for managing Procfile-based applications.
- fabtools - Tools for writing awesome Fabric files.
- cuisine - Chef-like functionality for Fabric.
-
Distribution
- py2exe - Freezes Python scripts (Windows).
- dh-virtualenv - Build and distribute a virtualenv as a Debian package.
- PyInstaller - Converts Python programs into stand-alone executables (cross-platform).
-
E-commerce
- shoop - An open source E-Commerce platform based on Django.
- django-shop - A Django based shop system.
- merchant - A Django app to accept payments from various payment processors.
- money - `Money` class with optional CLDR-backed locale-aware formatting and an extensible currency exchange.
- forex-python - Foreign exchange rates, Bitcoin price index and currency conversion.
- Cartridge - A shopping cart app built using the Mezzanine.
- alipay - Unofficial Alipay API for Python.
- python-currencies - Display money format and its filthy currencies.
-
Files
- mimetypes - (Python standard library) Map filenames to MIME types.
- pathlib - (Python standard library) An cross-platform, object-oriented path library.
- Unipath - An object-oriented approach to file/directory operations.
- watchdog - API and shell utilities to monitor file system events.
- python-magic - A Python interface to the libmagic file type identification library.
- PyFilesystem2 - Python's filesystem abstraction layer.
- path.py - A module wrapper for [os.path](https://docs.python.org/3/library/os.path.html).
-
Foreign Function Interface
- cffi - Foreign Function Interface for Python calling C code.
- ctypes - (Python standard library) Foreign Function Interface for Python calling C code.
- PyCUDA - A Python wrapper for Nvidia's CUDA API.
- cffi - Foreign Function Interface for Python calling C code.
- SWIG - Simplified Wrapper and Interface Generator.
-
GUI Development
- curses - Built-in wrapper for [ncurses](http://www.gnu.org/software/ncurses/) used to create terminal GUI applications.
- kivy - A library for creating NUI applications, running on Windows, Linux, Mac OS X, Android and iOS.
- PyGObject - Python Bindings for GLib/GObject/GIO/GTK+ (GTK+3).
- Tkinter - Tkinter is Python's de-facto standard GUI package.
- urwid - A library for creating terminal GUI applications with strong support for widgets, events, rich colors, etc.
- wxPython - A blending of the wxWidgets C++ class library with the Python.
- PyQt - Python bindings for the [Qt](https://www.qt.io/) cross-platform application and UI framework.
- Gooey - Turn command line programs into a full GUI application with one line.
- PySimpleGUI - Wrapper for tkinter, Qt, WxPython and Remi.
- enaml - Creating beautiful user-interfaces with Declaratic Syntax like QML.
- Eel - A library for making simple Electron-like offline HTML/JS GUI apps.
- urwid - A library for creating terminal GUI applications with strong support for widgets, events, rich colors, etc.
- Flexx - Flexx is a pure Python toolkit for creating GUI's, that uses web technology for its rendering.
- pywebview - A lightweight cross-platform native wrapper around a webview component.
- Toga - A Python native, OS native GUI toolkit.
-
Game Development
- Cocos2d - cocos2d is a framework for building 2D games, demos, and other graphical/interactive applications.
- Panda3D - 3D game engine developed by Disney.
- Pygame - Pygame is a set of Python modules designed for writing games.
- RenPy - A Visual Novel engine.
- Pygame - Pygame is a set of Python modules designed for writing games.
- PyOpenGL - Python ctypes bindings for OpenGL and it's related APIs.
-
Geolocation
- GeoDjango - A world-class geographic web framework.
- geopy - Python Geocoding Toolbox.
- django-countries - A Django app that provides a country field for models and forms.
- GeoIP - Python API for MaxMind GeoIP Legacy Database.
- pygeoip - Pure Python GeoIP API.
- geojson - Python bindings and utilities for GeoJSON.
-
HTML Manipulation
- BeautifulSoup - Providing Pythonic idioms for iterating, searching, and modifying HTML or XML.
- cssutils - A CSS library for Python.
- xmldataset - Simple XML Parsing.
- bleach - A whitelist-based HTML sanitization and text linkification library.
- pyquery - A jQuery-like library for parsing HTML.
- xmltodict - Working with XML feel like you are working with JSON.
- MarkupSafe - Implements a XML/HTML/XHTML Markup safe string for Python.
- untangle - Converts XML documents to Python objects for easy access.
- html5lib - A standards-compliant library for parsing and serializing HTML documents and fragments.
- cssutils - A CSS library for Python.
-
Hardware
- Pingo - Pingo provides a uniform API to program devices like the Raspberry Pi, pcDuino, Intel Galileo, etc.
- keyboard - Hook and simulate global keyboard events on Windows and Linux.
- PyUserInput - A module for cross-platform control of the mouse and keyboard.
- scapy - A brilliant packet manipulation library.
- mouse - Hook and simulate global mouse events on Windows and Linux.
- wifi - A Python library and command line tool for working with WiFi on Linux.
- Pingo - Pingo provides a uniform API to program devices like the Raspberry Pi, pcDuino, Intel Galileo, etc.
- ino - Command line toolkit for working with [Arduino](https://www.arduino.cc/).
-
Image Processing
- imgSeek - A project for searching a collection of images using visual similarity.
- pyBarcode - Create barcodes in Python without needing PIL.
- thumbor - A smart imaging service. It enables on-demand crop, re-sizing and flipping of images.
- pillow - Pillow is the friendly [PIL](http://www.pythonware.com/products/pil/) fork.
- Quads - Computer art based on quadtrees.
- nude.py - Nudity detection.
- python-qrcode - A pure Python QR Code generator.
- pagan - Retro identicon (Avatar) generation based on input string and hash.
- hmap - Image histogram remapping.
- pygram - Instagram-like image filters.
- scikit-image - A Python library for (scientific) image processing.
- wand - Python bindings for [MagickWand](http://www.imagemagick.org/script/magick-wand.php), C API for ImageMagick.
-
Implementations
- Jython - Implementation of Python programming language written in Java for the JVM.
- Numba - Python JIT compiler to LLVM aimed at scientific Python.
- PyPy - A very fast and compliant implementation of the Python language.
- MicroPython - A lean and efficient Python programming language implementation.
- Grumpy - More compiler than interpreter as more powerful CPython2.7 replacement (alpha).
- CPython - **Default, most widely used implementation of the Python programming language written in C.**
- CLPython - Implementation of the Python programming language written in Common Lisp.
- IronPython - Implementation of the Python programming language written in C#.
- Pyjion - A JIT for Python based upon CoreCLR.
- PeachPy - x86-64 assembler embedded in Python.
- Stackless Python - An enhanced version of the Python programming language.
- Pyston - A Python implementation using JIT techniques.
-
Job Scheduler
- Airflow - Airflow is a platform to programmatically author, schedule and monitor workflows.
- schedule - Python job scheduling for humans.
- Plan - Writing crontab file in Python like a charm.
- gunnery - Multipurpose task execution tool for distributed systems with web-based interface.
- django-schedule - A calendaring app for Django.
- Spiff - A powerful workflow engine implemented in pure Python.
- TaskFlow - A Python library that helps to make task execution easy, consistent and reliable.
-
Logging
-
Microsoft Windows
- Python(x,y) - Scientific-applications-oriented Python Distribution based on Qt and Spyder.
- WinPython - Portable development environment for Windows 7/8.
- PyWin32 - Python Extensions for Windows.
- PythonNet - Python Integration with the .NET Common Language Runtime (CLR).
- Python(x,y) - Scientific-applications-oriented Python Distribution based on Qt and Spyder.
- pythonlibs - Unofficial Windows binaries for Python extension packages.
-
Miscellaneous
- tryton - A general purpose business framework.
- boltons - A set of pure-Python utilities.
- pluginbase - A simple but flexible plugin system for Python.
- itsdangerous - Various helpers to pass trusted data to untrusted environments.
- blinker - A fast Python in-process signal/event dispatching system.
-
Natural Language Processing
- spacy - A library for industrial-strength natural language processing in Python and Cython.
- jieba - The most popular Chinese text segmentation library.
- pytext - A natural language modeling framework based on PyTorch.
- stanfordnlp - The Stanford NLP Group's official Python library, supporting 50+ languages.
- funNLP - A collection of tools and datasets for Chinese NLP.
- pattern - A web mining module for the Python.
- PyTorch-NLP - A toolkit enabling rapid deep learning NLP prototyping for research.
- snownlp - A library for processing Chinese text.
- polyglot - Natural language pipeline supporting hundreds of languages.
- pkuseg-python - A toolkit for Chinese word segmentation in various domains.
- langid.py - Stand-alone language identification system.
- gensim - Topic Modelling for Humans.
- nltk - A leading platform for building Python programs to work with human language data.
-
Package Management
-
Processes
- sarge - Yet another wrapper for subprocess.
- sh - A full-fledged subprocess replacement for Python.
- delegator.py - [Subprocesses](https://docs.python.org/3.6/library/subprocess.html) for Humans™ 2.0.
-
RESTful API
- django-tastypie - Creating delicious APIs for Django apps.
- falcon - A high-performance framework for building cloud APIs and web app backends.
- flask-api - Browsable Web APIs for Flask.
- eve - REST API framework powered by Flask, MongoDB and good intentions.
- apistar - A smart Web API framework, designed for Python 3.
- flask-restless - Generating RESTful APIs for database models defined with SQLAlchemy.
- flask-restful - Quickly building REST APIs for Flask.
- sandman - Automated REST APIs for existing database-driven systems.
- flask-api-utils - Taking care of API representation and authentication for Flask.
- ripozo - Quickly creating REST/HATEOAS/Hypermedia APIs.
- restless - Framework agnostic REST framework based on lessons learned from Tastypie.
- cornice - A RESTful framework for Pyramid.
- hug - A Python 3 framework for cleanly exposing APIs.
- django-tastypie - Creating delicious APIs for Django apps.
-
Robotics
- rospy - This is a library for ROS (Robot Operating System).
- PythonRobotics - This is a compilation of various robotics algorithms with visualizations.
- rospy - This is a library for ROS (Robot Operating System).
-
Science
- PyDy - Short for Python Dynamics, used to assist with workflow in the modeling of dynamic motion.
- RDKit - Cheminformatics and Machine Learning Software.
- SimPy - A process-based discrete-event simulation framework.
- Zipline - A Pythonic algorithmic trading library.
- SymPy - A Python library for symbolic mathematics.
- statsmodels - Statistical modeling and econometrics in Python.
- bccb - Collection of useful code related to biological analysis.
- Python-for-Scientists
- SciPy - A Python-based ecosystem of open-source software for mathematics, science, and engineering.
- bcbio-nextgen - Providing best-practice pipelines for fully automated high throughput sequencing analysis.
- ObsPy - A Python toolbox for seismology.
- Open Babel - A chemical toolbox designed to speak the many languages of chemical data.
- NumPy - A fundamental package for scientific computing with Python.
- astropy - A community Python library for Astronomy.
- PyMC - Markov Chain Monte Carlo sampling toolkit.
-
Search
- elasticsearch-py - The official low-level Python client for [Elasticsearch](https://www.elastic.co/products/elasticsearch).
- django-haystack - Modular search for Django.
- elasticsearch-dsl-py - The official high-level Python client for Elasticsearch.
- pysolr - A lightweight Python wrapper for [Apache Solr](https://lucene.apache.org/solr/).
- whoosh - A fast, pure Python search engine library.
- elasticsearch-py - The official low-level Python client for [Elasticsearch](https://www.elastic.co/products/elasticsearch).
-
Specific Formats Processing
- openpyxl - A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files.
- PDFMiner - A tool for extracting information from PDF documents.
- csvkit - Utilities for converting to and working with CSV.
- python-docx - Reads, queries and modifies Microsoft Word 2007/2008 docx files.
- Mistune - Fastest and full featured pure Python parsers of Markdown.
- pyexcel - Providing one API for reading, manipulating and writing csv, ods, xls, xlsx and xlsm files.
- XlsxWriter - A Python module for creating Excel .xlsx files.
- unp - A command line tool that can unpack archives easily.
- xlwt - excel/xlrd) - Writing and reading data and formatting information from Excel files.
- unoconv - Convert between any document format supported by LibreOffice/OpenOffice.
- tablib - A module for Tabular Datasets in XLS, CSV, JSON, YAML.
- python-pptx - Python library for creating and updating PowerPoint (.pptx) files.
- PyPDF2 - A library capable of splitting, merging and transforming PDF pages.
- Python-Markdown - A Python implementation of John Gruber’s Markdown.
- xlwings - A BSD-licensed library that makes it easy to call Python from Excel and vice versa.
- ReportLab - Allowing Rapid creation of rich PDF documents.
-
Template Engine
-
Testing
- pytest - A mature full-featured Python testing tool.
- unittest - (Python standard library) Unit testing framework.
- mock - (Python standard library) A mocking and patching library.
- fake2db - Fake database generator.
- locust - Scalable user load testing tool written in Python.
- factory_boy - A test fixtures replacement for Python.
- faker - A Python package that generates fake data.
- mixer - Another fixtures replacement. Supported Django, Flask, SQLAlchemy, Peewee and etc.
- PyAutoGUI - PyAutoGUI is a cross-platform GUI automation Python module for human beings.
- responses - A utility library for mocking out the requests Python library.
- mimesis - is a Python library that help you generate fake data.
- VCR.py - Record and replay HTTP interactions on your tests.
- hypothesis - Hypothesis is an advanced Quickcheck style property based testing library.
- splinter - Open source tool for testing web applications.
- Robot Framework - A generic test automation framework.
- nose2 - The successor to `nose`, based on `unittest2.
- freezegun - Travel through time by mocking the datetime module.
- mocket - A socket mock framework with gevent/asyncio/SSL support.
- httpretty - HTTP request mock tool for Python.
- httmock - A mocking library for requests for Python 2.6+ and 3.2+.
- green - A clean, colorful test runner.
- sixpack - A language-agnostic A/B Testing framework.
- Selenium - Python bindings for [Selenium](http://www.seleniumhq.org/) WebDriver.
- coverage - Code coverage measurement.
- doublex - Powerful test doubles framework for Python.
- radar - Generate random datetime / time.
- model_mommy - Creating random fixtures for testing in Django.
-
Text Processing
- difflib - (Python standard library) Helpers for computing deltas.
- unidecode - ASCII transliterations of Unicode text.
- python-phonenumbers - Parsing, formatting, storing and validating international phone numbers.
- python-slugify - A Python slugify library that translates unicode to ASCII.
- fuzzywuzzy - Fuzzy String Matching.
- pypinyin - Convert Chinese hanzi (漢字) to pinyin (拼音).
- chardet - Python 2/3 compatible character encoding detector.
- pyfiglet - An implementation of figlet written in Python.
- ply - Implementation of lex and yacc parsing tools for Python.
- pyparsing - A general purpose framework for generating parsers.
- hashids - Implementation of [hashids](http://hashids.org) in Python.
- sqlparse - A non-validating SQL parser.
- shortuuid - A generator library for concise, unambiguous and URL-safe UUIDs.
- python-user-agents - Browser user agent parser.
- pangu.py - Paranoid text spacing.
- python-nameparser - Parsing human names into their individual components.
- unicode-slugify - A slugifier that generates unicode slugs with Django as a dependency.
- ftfy - Makes Unicode text less broken and more consistent automagically.
- awesome-slugify - A Python slugify library that can preserve unicode.
- unidecode - ASCII transliterations of Unicode text.
- Levenshtein - Fast computation of Levenshtein distance and string similarity.
- textdistance - Compute distance between sequences with 30+ algorithms.
-
Third-party APIs
- apache-libcloud - One Python library for all clouds.
- boto3 - Python interface to Amazon Web Services.
- twython - A Python wrapper for the Twitter API.
- gspread - Google Spreadsheets Python API.
- facebook-sdk - Facebook Platform Python SDK.
- List of Python API Wrappers and Libraries
- django-wordpress - WordPress models and views for Django.
- google-api-python-client - Google APIs Client Library for Python.
-
Web Asset Management
- fanstatic - Packages, optimizes, and serves static file dependencies as Python packages.
- django-storages - A collection of custom storage back ends for Django.
- django-compressor - Compresses linked and inline JavaScript or CSS into a single cached file.
- flask-assets - Helps you integrate webassets into your Flask app.
- django-pipeline - An asset packaging library for Django.
- webassets - Bundles, optimizes, and manages unique cache-busting URLs for static resources.
- fanstatic - Packages, optimizes, and serves static file dependencies as Python packages.
-
Web Crawling
- feedparser - Universal feed parser.
- portia - Visual scraping for Scrapy.
- grab - Site scraping framework.
- MechanicalSoup - A Python library for automating interaction with websites.
- pyspider - A powerful spider system.
- robobrowser - A simple, Pythonic library for browsing the web without a standalone web browser.
- cola - A distributed crawling framework.
-
WSGI Servers
- uWSGI - A project aims at developing a full stack for building hosting services, written in C.
- werkzeug - A WSGI utility library for Python that powers Flask and can easily be embedded into your own projects.
- gunicorn - Pre-forked, partly written in C.
- bjoern - Asynchronous, very fast and written in C.
- waitress - Multi-threaded, powers Pyramid.
-
Websites
-
Weekly
-
Podcasts
-
Code Quality
- Codacy - Automated Code Review to ship better code, faster.
- CodeFactor - Automated Code Review for Git.
- Landscape - Hosted continuous Python code metrics.
- PEP 8 Speaks - GitHub integration to review code style.
-
Continuous Integration
- CircleCI - A CI service that can run very fast parallel testing.
- Wercker - A Docker-based platform for building and deploying applications and microservices.
- awesome-CIandCD
- Vexor CI - A continuous integration tool for private apps with pay-per-minute billing model.
- Travis CI - A popular CI service for your open source and [private](https://travis-ci.com) projects. (GitHub only)
-
Functional Programming
- Coconut - Coconut is a variant of Python built for simple, elegant, Pythonic functional programming.
- fn.py - Functional programming in Python: implementation of missing features to enjoy FP.
- Toolz - A collection of functional utilities for iterators, functions, and dictionaries.
- funcy - A fancy and practical functional tools.
- Coconut - Coconut is a variant of Python built for simple, elegant, Pythonic functional programming.
- CyToolz - Cython implementation of Toolz: High performance functional utilities.
-
Twitter
-
RPC Servers
- SimpleXMLRPCServer - (Python standard library) Simple XML-RPC server implementation, single-threaded.
- zeroRPC - zerorpc is a flexible RPC implementation based on [ZeroMQ](http://zeromq.org/) and [MessagePack](http://msgpack.org/).
- SimpleJSONRPCServer - This library is an implementation of the JSON-RPC specification.
-
Algorithms and Design Patterns
- sortedcontainers - Fast, pure-Python implementation of SortedList, SortedDict, and SortedSet types.
- python-patterns - A collection of design patterns in Python.
- PyPattyrn - A simple yet effective library for implementing common design patterns.
- algorithms - Minimal examples of data structures and algorithms in Python.
-
Environment Management
- pyenv - Simple Python version management.
- pipenv - Python Development Workflow for Humans.
- virtualenv - A tool to create isolated Python environments.
- poetry - Python dependency management and packaging made easy.
-
Command-line Tools
- howdoi - Instant coding answers via the command line.
- percol - Adds flavor of interactive selection to the traditional pipe concept on UNIX.
- PathPicker - Select files out of bash output.
- thefuck - Correcting your previous console command.
- doitlive - A tool for live presentations in the terminal.
- try - A dead simple CLI to try out python packages - it's never been easier.
- mycli - A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.
- pgcli - Postgres CLI with autocompletion and syntax highlighting.
- kube-shell - An integrated shell for working with the Kubernetes CLI.
- saws - A Supercharged [aws-cli](https://github.com/aws/aws-cli).
- httpie - A command line HTTP client, a user-friendly cURL replacement.
- tmuxp - A [tmux](https://github.com/tmux/tmux) session manager.
- cookiecutter - A command-line utility that creates projects from cookiecutters (project templates).
-
Serverless Frameworks
- Zappa - A tool for deploying WSGI applications on AWS Lambda and API Gateway.
- python-lambda - A toolkit for developing and deploying Python code in AWS Lambda.
-
Audio
- beets - A music library manager and [MusicBrainz](https://musicbrainz.org/) tagger.
- audioread - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.
- dejavu - Audio fingerprinting and recognition.
- pyAudioAnalysis - Audio feature extraction, classification, segmentation and applications.
- pydub - Manipulate audio with a simple and easy high level interface.
- TimeSide - Open web audio processing framework.
- eyeD3 - A tool for working with audio files, specifically MP3 files containing ID3 metadata.
- mutagen - A Python module to handle audio metadata.
- tinytag - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
- mingus - An advanced music theory and notation package with MIDI file and playback support.
-
Authentication
- authlib - JavaScript Object Signing and Encryption draft implementation.
- django-allauth - Authentication app for Django that "just works."
- python-oauth2 - A fully tested, abstract interface to creating OAuth clients and servers.
- python-social-auth - An easy-to-setup social authentication mechanism.
- pyjwt - JSON Web Token implementation in Python.
- python-jwt - A module for generating and verifying JSON Web Tokens.
- oauthlib - A generic and thorough implementation of the OAuth request-signing logic.
- python-jose - A JOSE implementation in Python.
- django-oauth-toolkit - OAuth 2 goodies for Django.
-
Distributed Computing
- luigi - A module that helps you build complex pipelines of batch jobs.
- dask - A flexible parallel computing library for analytic computing.
- faust - A stream processing library, porting the ideas from [Kafka Streams](https://kafka.apache.org/documentation/streams/) to Python.
- mrjob - Run MapReduce jobs on Hadoop or Amazon Web Services.
- PySpark - [Apache Spark](https://spark.apache.org/) Python API.
- streamparse - Run Python code against real-time streams of data via [Apache Storm](http://storm.apache.org/).
- Ray - A system for parallel and distributed Python that unifies the machine learning ecosystem.
-
News Feed
- Stream Framework - Building newsfeed and notification systems using Cassandra and Redis.
- django-activity-stream - Generating generic activity streams from the actions on your site.
-
Recommender Systems
- lightfm - A Python implementation of a number of popular recommendation algorithms.
- annoy - Approximate Nearest Neighbors in C++/Python optimized for memory usage.
- Surprise - A scikit for building and analyzing recommender systems.
- implicit - A fast Python implementation of collaborative filtering for implicit datasets.
- spotlight - Deep recommender models using PyTorch.
- tensorrec - A Recommendation Engine Framework in TensorFlow.
- fastFM - A library for Factorization Machines.
- libffm - A library for Field-aware Factorization Machine (FFM).
-
Debugging Tools
- profiling - An interactive Python profiler.
- pudb - A full-screen, console-based Python debugger.
- py-spy - A sampling profiler for Python programs. Written in Rust.
- pyelftools - Parsing and analyzing ELF files and DWARF debugging information.
- wdb - An improbable web debugger through WebSockets.
- django-devserver - A drop-in replacement for Django's runserver.
- pyringe - Debugger capable of attaching to and injecting code into Python processes.
- vprof - Visual Python profiler.
- icecream - Inspect variables, expressions, and program execution with a single, simple function call.
- python-hunter - A flexible code tracing toolkit.
- lptrace - [strace](http://man7.org/linux/man-pages/man1/strace.1.html) for Python programs.
- line_profiler - Line-by-line profiling.
- manhole - Debugging UNIX socket connections and present the stacktraces for all threads and an interactive prompt.
- ipdb - IPython-enabled [pdb](https://docs.python.org/3/library/pdb.html).
- memory_profiler - Monitor Memory usage of Python code.
- django-debug-toolbar - Display various debug information for Django.
- pdb++ - Another drop-in replacement for pdb.
- pyflame - A ptracing profiler For Python.
- flask-debugtoolbar - A port of the django-debug-toolbar to flask.
-
Forms
- django-crispy-forms - A Django app which lets you create beautiful forms in a very elegant and DRY way.
- Deform - Python HTML form generation library influenced by the formish form generation library.
- django-bootstrap4 - Bootstrap 4 integration with Django.
- django-remote-forms - A platform independent Django form serializer.
- django-bootstrap3 - Bootstrap 3 integration with Django.
-
Database
-
Email
- Nylas Sync Engine - Providing a RESTful API on top of a powerful email sync platform.
- modoboa - A mail hosting and management platform including a modern and simplified Web UI.
- yagmail - Yet another Gmail/SMTP client.
- flanker - A email address and Mime parsing library.
- imbox - Python IMAP for Humans.
- Marrow Mailer - High-performance extensible mail delivery framework.
- lamson - Pythonic SMTP Application Server.
- envelopes - Mailing for human beings.
- inbox.py - Python SMTP Server for Humans.
-
WebSocket
- WebSocket-for-Python - WebSocket client and server library for Python 2 and 3 as well as PyPy.
- django-channels - Developer-friendly asynchrony for Django.
- autobahn-python - WebSocket & WAMP for Python on Twisted and [asyncio](https://docs.python.org/3/library/asyncio.html).
- django-socketio - WebSockets for Django.
- crossbar - Open-source Unified Application Router (Websocket & WAMP for Python on Autobahn).
-
Documentation
- pdoc - Epydoc replacement to auto generate API documentation for Python libraries.
- awesome-sphinxdoc
- pycco - The literate-programming-style documentation generator.
- sphinx - Python Documentation generator.
-
Permissions
- django-guardian - Implementation of per object permissions for Django 1.2+
- django-rules - A tiny but powerful app providing object-level permissions to Django, without requiring a database.
-
Tagging
- django-taggit - Simple tagging for Django.
-
Queue
-
Static Site Generator
-
Video
- moviepy - A module for script-based movie editing with many formats, including animated GIFs.
- scikit-video - Video processing routines for SciPy.
-
Serialization
- python-rapidjson - A Python wrapper around [RapidJSON](https://github.com/Tencent/rapidjson).
- marshmallow - A lightweight library for converting complex objects to and from simple Python datatypes.
- pysimdjson - A Python bindings for [simdjson](https://github.com/lemire/simdjson).
-
Network Virtualization
-
Web Content Extracting
- textract - Extract text from any document, Word, PowerPoint, PDFs, etc.
- newspaper - News extraction, article extraction and content curation in Python.
- html2text - Convert HTML to Markdown-formatted text.
- lassie - Web Content Retrieval for Humans.
- sumy - A module for automatic summarization of text documents and HTML pages.
- micawber - A small library for extracting rich content from URLs.
- python-readability - Fast Python port of arc90's readability tool.
- requests-html - Pythonic HTML Parsing for Humans.
- toapi - Every web site provides APIs.
-
Package Repositories
- devpi - PyPI server and packaging/testing/release tool.
- warehouse - Next generation Python Package Repository (PyPI).
- bandersnatch - PyPI mirroring tool provided by Python Packaging Authority (PyPA).
- localshop - Local PyPI server (custom packages and auto-mirroring of pypi).
-
URL Manipulation
- furl - A small Python library that makes parsing and manipulating URLs easy.
- webargs - A friendly library for parsing HTTP request arguments with built-in support for popular web frameworks.
- pyshorteners - A pure Python URL shortening lib.
- purl - A simple, immutable URL class with a clean API for interrogation and manipulation.
-
HTTP Clients
-
Internationalization
Programming Languages
Categories
Testing
27
Text Processing
22
Debugging Tools
19
Database Drivers
19
Specific Formats Processing
16
Science
15
GUI Development
15
RESTful API
14
Websites
14
Code Analysis
13
Command-line Tools
13
Natural Language Processing
13
DevOps Tools
12
ORM
12
Implementations
12
Image Processing
12
Data Visualization
12
Command-line Interface Development
12
Twitter
11
Editor Plugins and IDEs
10
HTML Manipulation
10
Audio
10
Web Content Extracting
9
Date and Time
9
Weekly
9
Authentication
9
Web Frameworks
9
Email
9
Recommender Systems
8
Admin Panels
8
Deep Learning
8
Hardware
8
E-commerce
8
Third-party APIs
8
Files
7
Web Crawling
7
Distributed Computing
7
CMS
7
Concurrency and Parallelism
7
Web Asset Management
7
Machine Learning
7
Job Scheduler
7
Data Validation
7
Game Development
6
Microsoft Windows
6
Functional Programming
6
Geolocation
6
Search
6
Caching
6
Built-in Classes Enhancement
5
Networking
5
WebSocket
5
WSGI Servers
5
Build Tools
5
Miscellaneous
5
Data Analysis
5
Foreign Function Interface
5
Continuous Integration
5
Forms
5
Package Management
4
Configuration
4
HTTP Clients
4
URL Manipulation
4
Downloader
4
Documentation
4
Algorithms and Design Patterns
4
Static Site Generator
4
Package Repositories
4
Environment Management
4
Computer Vision
4
Cryptography
4
Podcasts
4
Code Quality
4
Logging
4
Serialization
3
Processes
3
Database
3
Robotics
3
Compatibility
3
RPC Servers
3
Distribution
3
Queue
3
Interactive Interpreter
3
Video
2
Internationalization
2
Serverless Frameworks
2
Template Engine
2
Permissions
2
News Feed
2
Network Virtualization
2
Tagging
1
Sub Categories
Keywords
python
208
django
17
machine-learning
17
python3
14
testing
13
http
12
database
9
deep-learning
9
flask
8
cli
8
awesome-list
8
web
7
data-science
7
pypi
7
json
7
awesome
7
debugging
6
library
6
framework
6
asyncio
6
python-library
5
linux
5
api
5
recommender-system
5
pandas
5
python-3
5
aws
4
mock
4
http-server
4
sqlalchemy
4
automation
4
mongodb
4
ipython
4
matrix-factorization
4
redis
4
pallets
4
neural-network
4
crawler
4
javascript
4
python2
4
requests
4
music
4
terminal
4
visualization
4
orm
4
utilities
4
package
3
email
3
administration
3
static-site-generator
3