Requests は「人間のためのHTTP」という謳い文句のhttpライブラリ。確かにとても便利。Python3であれば http.client 使えばいいんですけど、ついついRequestsを使ってしまう。
_response = requests.get( 'https://TARGET_URL', auth=('user_name', 'passwd'), verify=False )
auth=の部分がベーシック認証、verify=Falseがオレオレ証明書の許容。これだけです。簡単。
まあ、
InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised.
ってWarning吐きまくってるんですけどね。
Requestsが動くならPython2でも3でも動くはずです。