What is the cleanest way to do HTTP POST with Basic Auth in Python?
Using only the Python core libs.
Seriously, just use requests
:
import requests
resp = requests.post(url, data={}, auth=('user', 'pass'))
It's a pure python library, installing is as easy as easy_install requests
or pip install requests
. It has an extremely simple and easy to use API, and it fixes bugs in urllib2
so you don't have to. Don't make your life harder because of silly self-imposed requirements.