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.