Bonjour,
je développe en ce moment un client Python qui interroge un serveur web et j'ai quelques soucis.

La partie qui me bloque est le téléchargement d'un fichier. J'utilise urllib.urlopen() que je fais suivre d'un read mais leur comportement est pour le moins étrange. En effet, si j'utilise un navigateur web pour accéder au fichier que je tente de télécharger, ça marche. Par contre avec urllib.urlopen() je reçois une erreur 400 - bad request.

L'url en question est la suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
http://localhost:2039/WebApplication/WebService/downloadNoSession.aspx?PassHash=toto&SerialNumber=465&FileID=65
Donc si je rentre cette url dans un navigateur web j'obtiens la boite de dialogue de téléchargement de fichier, par contre avec urlopen() ça me donne un bad request.

J'utilise ce code où path est une variable contenant l'url ci-dessus :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
file = urllib.urlopen(path)
info = file.info()
filesize = int(info.getheader("content-length"))
content = file.read(filesize)
Auriez-vous une idée de ce qui pourrait causer ça ?