-
12. 12. 2011, 11:08 #1Mitglied
- Registriert seit
- Dec 2011
- Beiträge
- 2
[Powershell] Dateigröße über HTTP bestimmen
Hallo zusammen,
bin der Sandfish und dies ist mein erster Beitrag
. Habe mir länger überlegt, ob ich mein Problem hier anfrage aber mir fällt partout keine Lösung ein.
Ich schreibe derzeit ein Powershell-Script, um automatisiert Musikalben von www.jamendo.de (Creative Commons) herunterzuladen. Das Script ist derzeit im Endstadium und funktioniert bisher sehr gut.
Das Problem ist, dass mit diesem Script auf Dauer soviel heruntergeladen wird, dass es nur eine Frage der Zeit ist, bis die Festplatte voll läuft. Ich könnte nun vor dem Download eines jeden Albums den freien Speicherplatz der Platte berechnen und festlegen, dass das Script unter einem festgelegten Schwellwert (z.B. 1GB) kein Album mehr herunterlädt.
Eleganter fände ich es jedoch herauszufinden wie groß ein Album ist und es nur dann zu downloaden, wenn genug Speicherplatz vorhanden ist. Gibt es eine Möglichkeit via Powershell \ HTTP herauszufinden wie groß eine Datei ist, bevor ich sie gedownloaded habe? Ich stehe gerade gehörig auf dem Schlauch und weiß nichtmal einen Ansatz.
Vielen Dank im voraus
Sandfish
-
12. 12. 2011, 12:51 #2
Re: [Powershell] Dateigröße über HTTP bestimmen
Ich weiß, Powershell != C# aber egal
http://stackoverflow.com/questions/1...http-file-size
-
14. 12. 2011, 20:46 #3Mitglied
(Threadstarter)
- Registriert seit
- Dec 2011
- Beiträge
- 2
Re: [Powershell] Dateigröße über HTTP bestimmen
Vielen Dank für den Link! Ich habe daraus jetzt eine Powershellversion gestrickt.
Vielleicht kann es ja jemand gebrauchen:
Vor allem "$resp.close()" ist wichtig! Wenn mehrere Verbindungen nacheinander gestartet werden und dieser Befehl nicht ausgeführt wird hängt sich das Script auf.Code:Function GetAlbumSize ($F_URL) { [net.httpWebRequest] $req = [net.webRequest]::create($F_URL) # We just want header information $req.Method = "HEAD" [net.httpWebResponse] $resp = $req.GetResponse() [int] $F_length = $resp.ContentLength $resp.close() # Return value in KB return $F_length }
-


Zitieren
mehr lesen...







Mechwarrior Online: Closed Beta...
Heute, 12:36 in gulli:news