Check out these Most Common Python Libraries to learn all about the cool things that are being developed with the Python programming language. The software we cover in this article includes httpie, flask, django, requests, ansible, scrapy, shadowsocks, tornado, scikit, reddit, ipython, sentry, docker compose, fabric, pyspider, salt stack, deis, boto, odoo, ajenti, and webpy. In looking at these popular Python repos, we can see that Python is used in applications like machine learning, big data, scientific analysis, IT and general automation, as well as web development.
1. Httpie
Httpie is an HTTP client operated entirely at the command line interface. It is user-friendly and has nice features such as wget style downloads, syntax highlighting, json support, and various useful extensions. You can use it to interact with HTTP servers, web services, and other API’s for easy debugging and testing. You make use of a simple HTTP command and use the various HTTP verbs such as GET, POST, PUT, PATCH, and DELETE. source code
2. Awesome Python
A curated list of Python applications such as Environment Management, Package Repositories, Distribution, Build Tools, Text Processing, Natural Language Processing, Documentation, Configuration, Command-line Tools, Geolocation, HTTP, Python Database, Database Drivers, ORM, Web Frameworks, CMS, E-commerce, RESTful API, Serialization, Authentication, Template Engine, Queue, Search, Caching, Email, Internationalization, URL Manipulation, HTML Manipulation, Web Crawling, Web Content Extracting, Forms, Data Validation, and much more.
3. Flask
Flask is a framework written in Python with many powerful features built-in. Flask uses a built-in development server, has unit testing support built-in, makes use of RESTful dispatching, uses the Jinja2 template system, uses secure cookies, is Unicode based, and has great documentation. source code
4. Django
Django is the web framework written in Python. It is used for rapid application development with the goal of reducing boilerplate one would encounter when starting a project from scratch. It is open-source, fast, secure, and scales well. source code
5. Python Requests
Requests is a powerful HTTP library that allows the software engineer to send pristine HTTP/1.1 request with almost no effort. Rquests boasts features such as International Domains and URLs, Keep-Alive & Connection Pooling, Sessions with Cookie Persistence, Browser-style SSL Verification, Basic/Digest Authentication, Elegant Key/Value Cookies, Automatic Decompression, Automatic Content Decoding, Unicode Response Bodies, Multipart File Uploads, HTTP(S) Proxy Support, Connection Timeouts, Streaming Downloads, Chunked Requests, and Thread-safety. source code
6. Ansible
Ansible is written in Python and is used to automate information technology such as application deployment, cloud provisioning, configuration management, as well as many other IT use cases. It is designed to monitor and automate the entire infrastructure, not just single systems at a time. source code
7. Scrapy
Scrapy is the Python-powered application framework for crawling websites and extracting data that can be used for many various useful applications such as data mining, information processing or historical archival. It is also excellent for data consumption of popular Application Programming Interfaces. Similar in nature to Beautiful Soup. source code
8. Certbot
Certbot is the Let’s Encrypt client which is a fully-featured, extensible client for the Let’s Encrypt Certificate Authority that can automate the tasks of obtaining certificates and configuring webservers to use them. The Let’s Encrypt client runs on Unix and Linux based operating systems. source code
9. Shadowsocks
Shadowsocks is a secure socks5 proxy that can be used to secure and protect sensitive Internet traffic. It is written in Python and offers flexible encryption, works on Windows, Linux, Mac, Android, and iOS, and is easy to install with the pip package manager. source code
10. Tornado
Tornado is a Python-powered web framework as well as an asynchronous networking library. It was originally developed at friend feed which was later acquired by Facebook. Tornado can scale to many thousands of open connections due to its nonblocking input/output design which makes it good for WebSockets and other long polling type applications. source code
11. Scikit Learn
Scikit Learn is a machine learning framework built on the popular Python repositories NumPy, SciPy, and matplotlib. It is designed for data mining and analysis techniques such as Classification, Regression, Clustering, Dimensionality reduction, Model selection, and Preprocessing. source code
12. Reddit
Reddit brands itself as the front page of the internet, and they might not be far off on that description. It is one of the most heavily visited websites online today and caters to a technically savvy and in the know community that uses a voting system to determine which news stories and links make it to the front page. source code
13. iPython
iPython is the kernel for Jupyter and is an enhanced interactive shell that surpasses the functionality offered by the default Python command line. iPython offers tab completion, system shell access, object introspection, command history retrieval across sessions, and an extended command system for adding functionality when working interactively. iPython strives to be a very efficient environment for both Python code development and for exploration of problems using Python objects. source code
14. Sentry
Sentry provides crash reporting for your web apps, mobile apps, and games in real-time. It is used by companies such as Dropbox, Airbnb, stripe, uber, and others. Although written in Python, Sentry works with most languages and frameworks such as React, Angular, Express, Django, Flask, Symfony, Laravel, Rails, Swift, and many more. source code
15. Python Design Patterns
This great collection of design patterns will help with learning the various approaches to software development in Python. The entire list is broken up into Creational Patterns, Structural Patterns, and Behavioral Patterns. This is a great educational resource for Python learners.
16. Docker Compose
Docker Compose was created to allow for the definition and running of multi container Docker applications. Compose uses a Compose config file which specifies all of the application services, then the software starts and runs everything for you with one command. The three step process has you create a Dockerfile, define services in docker-compose.yml, and then run docker-compose up. source code
17. Fabric
Fabric is a tool to streamline application deployment and system administration tasks, using the SSH protocol. The software offers a small collection of tools for remote and local shell commands, file management, as well as accepting user input or terminating program execution. source code
18. Pyspider
Pyspider is a web crawler written in Python. Just like Google and Bing use spiders to crawl and index website information, so too can you use Pyspider to complete similar tasks. It is built from several components such as the Scheduler, Fetcher, Processor, Result Worker, and WebUI. The webui is a very neat feature of Pyspider, as many other similar tools have no such functionality. source code
19. Salt
Salt is the Python-powered Software that can automate, manage, and configure all types of applications and infrastructure at scale. Salt is used to manage all aspects of a data center or cloud infrastructure with support for virtualization, application stacks, and custom code. In fact, SaltStack has been recognized by VMware as a winner of the award for virtualization management. Salt offers a platform for native configuration management for automation of critical CloudOps, ITOps, and DevOps tasks. source code
20. Deis
Deis is an open source platform as a service for deploying and managing applications on your servers. It builds on Docker and Kubernetes to deliver a Heroku like workflow as a lightweight platform as a service. source code
21. Boto
Need to work programmatically with Amazon Web Services? Boto is what you need if you’re working in Python. Boto is the AWS software development kit that makes it easy for Python developers to interact with Amazon services such as EC2 and S3. The API is object-oriented, though direct service access is also built-in. source code
22. Odoo
Odoo is an open-source customer relationship management software that supports such critical functions as eCommerce, sales, account, point of sale, project, and inventory. It may be open source, but Odoo competes with such heavyweights as Oracle, SAP, Salesforce, Quickbooks, and Trello. Odoo has over 5400 developers which have allowed the software to become polished and production-ready. source code
23. Ajenti
Ajenti gives your servers a beautiful web based UI for system administration and monitoring. Ajenti is an alternative to software applications like cPanel, Plesk, and Webmin. source code
24. Webpy
Web.py is a Python framework for building powerful and scalable websites and applications. It was in use during early revisions of reddit and now powers sites such as Frinki, Yandex, Make History, Oyster.com, local.ch, archivd.com, Cheifmail, and pudung.com. source code