Solution: Go to the latest version of your library.
It all starts here, all of a sudden (October-2017), the Distutils team decided to cancel support for non-HTTPS requests, without worrying about breaking backward compatibility of earlier versions of numerous python libraries. A bit unprofessional, but hey it's the world of Python.
So, here is the fix, just go to the latest version of the library ( rsa==3.4.2 in my case) in any library ( nltk==3.2.5 , etc.)
Alternative solution: fork (or local copy) of the repo version and changing the http URL to https
However, note whether you are doing this while saving another project, since the dependency you are updating may not be compatible with the source library that the author intended, for example, in my context, rsa used in another library as a dependency. So the solution was to update the parent library so that this problem would automatically take care.
PS: To avoid confusion when building requirements.txt make entries only in the libraries that you really use, and not their and their dependencies. Pip will automatically resolve them. (DRY)
source share