Python is an ever growing ecosystem. There are tons of libraries that are used worldwide and have thousands of users, but it also has some gems that are used by few and unknown to most people. I dare to say this happens not only with Python, but with all known programming languages.

I have discovered some of these gems on r/python, others were indications from friends at conferences and some I found while exploring github. I'll try to list five of my favorites:

importd - all of Django in a single import. No project, no settings file, no urls file, no apps, just a single import. It is a very usefull lib if you want to use all of Django's power but don't want to be hassled by the bureaucracy of it.

click - click is a package that allows the creationg of awesome command line interfaces using only little bits of code. It is highly extensible and configurable, making the process of writing command line tools very fun. It is a very nice replacement to docopt.

newspaper - a news/article extraction module in Python. It uses NLP and machine learning to scrape articles from webpages with minimal effort. It supports multithreading and more than 10 languages. Amongst its features, the two I like most are the possibility of extracting the summary from the text and identifying top keywords from an article.

cookiecutter - not a lib, but a hidden gem! Cookiecutter is a command-line tool that creates projects from templates. It is very simple to use, cross-platform and can be used to generate code from template in any language. The use of cookiecutter templates can be very usefull when starting a project on a tight schedule.

OpenMining - a Business Intelligence application server written in Python, based on Pandas. It integrates lots of tools and, even though it is only a few months old, can generate lots of results.

Those are my Top5 "underdog" libraries. If i had to choose five more I would probably choose: requests, silk, jedi, playerpiano and scrapy.

What about you? Which underdog libs whould you suggest?