Comment puis-je télécharger le fichier pdf via https avec python

Je suis en train d'écrire un script python qui va sauvegarder le fichier pdf localement selon le format donné dans l'URL. pour eg.

https://Hostname/saveReport/file_name.pdf   #saves the content in PDF file.

Je vais ouvrir cette URL par le biais d'un script python :

 import webbrowser
 webbrowser.open("https://Hostname/saveReport/file_name.pdf")  

L'url contient beaucoup d'images et de texte. Une fois cette URL est ouverte je veux enregistrer un fichier au format pdf à l'aide d'un script python.

C'est ce que j'ai fait jusqu'à présent.

Code 1:

import requests
url="https://Hostname/saveReport/file_name.pdf"    #Note: It's https
r = requests.get(url, auth=('usrname', 'password'), verify=False)
file = open("file_name.pdf", 'w')
file.write(r.read())
file.close()

Code 2:

 import urllib2
 import ssl
 url="https://Hostname/saveReport/file_name.pdf"
 context = ssl._create_unverified_context()
 response = urllib2.urlopen(url, context=context)  #How should i pass authorization details here?
 html = response.read()

Dans le code ci-dessus, j'obtiens: urllib2.HTTPError: Erreur HTTP 401: non autorisé

Si j'utilise le Code 2, comment puis-je passer de l'autorisation de détails?

Voulez-vous une solution à l'aide de webbrowser.open, requests.get, ou urllib2.urlopen?
J'ai essayé les méthodes ci-dessus. La demande urllib2 tout fonctionne.

OriginalL'auteur | 2015-11-02