Bilddateien über http lokal speichern?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
rabit
User
Beiträge: 11
Registriert: Freitag 1. Februar 2008, 15:01

Bilddateien über http lokal speichern?

Beitragvon rabit » Samstag 9. Februar 2008, 20:54

Hallo,

ich bin noch Anfänger und nutze Python mehr als lokalen php Ersatz...

Meine Frage:
Mit urllib2 kann man problemlos Webseiten laden. Nur wie geht das mit Bildern? Wenn ich das gleiche mache wie mit html Seiten und dann lokal wieder als .jpg oder .gif speichere sieht das Ergebnis dem Original zwar ähnlich, mehr aber auch nicht.

Beispiel:
[code=]import urllib2
url = "http://www.python-forum.de/templates/subSilver/images/logo_phpBB.gif"
htmlFile = urllib2.urlopen(url)
htmlData = htmlFile.read()
bilddatei = open('python.gif', 'w')
bilddatei.write(htmlData)[/code]

Danke für einen Tipp, kann ja so schwer nicht sein.

Grüße
rabit
fred.reichbier
User
Beiträge: 155
Registriert: Freitag 29. Dezember 2006, 18:27

Beitragvon fred.reichbier » Samstag 9. Februar 2008, 21:05

Hallo,

Vielleicht funktioniert es, wenn du die Datei im Binärschreibmodus (oder so :p) öffnest?

Code: Alles auswählen

bilddatei = open('python.gif', 'wb')

Und .close nicht vergessen :)

Gruß Fred
rabit
User
Beiträge: 11
Registriert: Freitag 1. Februar 2008, 15:01

Beitragvon rabit » Samstag 9. Februar 2008, 21:15

Sag ich doch! Kann so schwer nicht sein ;)

Danke!

Grüße
rabit
EyDu
User
Beiträge: 4866
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Beitragvon EyDu » Samstag 9. Februar 2008, 21:58

Wirf noch mal einen Blick auf die Funktion "urlretrieve" im Modul "urllib". Die macht im Prinzip schon das was du (laut Beispiel) möchtest.
rabit
User
Beiträge: 11
Registriert: Freitag 1. Februar 2008, 15:01

Beitragvon rabit » Samstag 9. Februar 2008, 23:02

Ja es geht auch so:

[code=]url = "http://www.python-forum.de/templates/subSilver/images/logo_phpBB.gif"
res = urllib.urlretrieve(url, "python.gif")[/code]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder