Download mit Python

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.
Antworten
Pascal
User
Beiträge: 271
Registriert: Samstag 4. April 2009, 22:18

Hallo Leute,

Ich würde gerne ein Bild, wovon ich nur den Link kenne aus dem Internet runterladen.
Ich habe keine Idee, wie das gehen soll.
Kann mir jemand ein Modul etc. nennen?
Benutzeravatar
Klip
User
Beiträge: 98
Registriert: Donnerstag 10. August 2006, 20:39

Schau dir mal urllib2 und urlopen() an (:

http://docs.python.org/library/urllib2.html
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Ein Quick&Dirty-Skript, daß ich auf einem Server ohne gescheiten Browser manchmal benutze, wenn ich was runterladen will:

Code: Alles auswählen

#! /usr/bin/python
import urllib
import sys

def download(url):
    fname, headers = urllib.urlretrieve(url,'./%s' % url.split('/')[-1])
    print 'downloading: %s' % fname

if __name__ == "__main__":
    download(sys.argv[1])
Das mit dem split() ist vielleicht etwas speziell ...

HTH
Christian
Pascal
User
Beiträge: 271
Registriert: Samstag 4. April 2009, 22:18

danke, das klappt :)

aber warum sys.argv ?
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

Pascal hat geschrieben:aber warum sys.argv ?
Damit kann man die Url als ersten Programmparameter beim Skriptaufruf übergeben. Also mit ``python downloadscript.py [url]`` kannst du dann verschiedenen Dateien herunterladen ohne Änderungen am Quelltext vornehmen zu müssen.[/code]
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

CM hat geschrieben:Ein Quick&Dirty-Skript, daß ich auf einem Server ohne gescheiten Browser manchmal benutze, wenn ich was runterladen will:[...]
Du kennst wget?
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Jau. Gegenfrage: Benutzt Du immer das Tool, das etabliert ist oder versuchst Du Dich manchmal in "sinnlosem" Rumcoden? ;-) (Bin mir auch durchaus bewußt, daß das Codesnipsel auch nicht die "beste" Lösung derartiger Probleme darstellt.)
Antworten