1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

batch-datei für download von datei aus php script?

Discussion in 'Programmieren' started by bernimoses, Mar 10, 2008.

Thread Status:
Not open for further replies.
  1. Hi, ich würde gern eine batch-datei schreiben für eine datei (link: http://www.fast-load.net//index.php?pid=cd2473eef7d52947c67e60b4326d4a9f ) die sich ständig erneuert und darum neu runtergeladen werden und ins verzeichniss C:/Programme/Server/ kopiert werden sollte. mit wget hab ichs schon ausprobiert da lädt er immer nur die php seite als script runter aber nicht die datei!

    kann mir pls jemand helfen?:bitte:
     
  2. da_Ferdi

    da_Ferdi Halbes Megabyte

    würde wget wirklich das php- script herunterladen, wäre mit dem server irgendwas nicht in ordnung...

    ändere mal die endung der datei in *.html oder *.htm ...
     
  3. gaht ned dann findet er die seite ned! kann mir pls jemand helfen?
     
  4. kalweit

    kalweit Hüter der Glaskugel

    Der Betreiber der Seite möchte nicht, dass du auf die Art an die Datei kommst und hat deswegen eine entsprechende Referer-Sperre eingebaut.
     
  5. Michi0815

    Michi0815 Guest

    du kannst ja mal mit
    Code:
    wget -r -l 1 -H http://www.fast-load.net//index.php?pid=cd2473eef7d52947c67e60b4326d4a9f
    experimentieren. da kriegst du allerdings 1) auch einiges an zeuch das du garnicht wolltest und 2) könnte es passieren, dass du damit gegen die hausregeln von fast-load verstößt...

    #1 könnte man mit mit dem schalter --exclude-domains begegenen.
     
  6. es funktioniert immer noch nicht oder ich bekomms ned auf die reihe. :confused: Wenn irgendjemend eine andere Methode (z.b. ohne wget) oder eine mit wget kennt mit der das funktioniert bitte hilf mir! :bitte:
     
  7. Michi0815

    Michi0815 Guest

    die einfachtste möglichkeit wäre die datei auf einen server zu verfrachten, von dem man auch was runterladen kann ^^

    btw...
    es ist für die helfer immer wieder interessant und lehrreich eventuell aufgetretene fehlermeldungen zu erfahren. kommentarloses versagen eines so umfangreichen tools wie wget ist recht selten...
     
  8. es bringt ja gar keine fehler sondern es lädt massen weiße datein runter aber nicht die gewünschte! und ich kann die datei nicht auf einen anderen server verfrachten da sie nicht von mir ist!
     
  9. Michi0815

    Michi0815 Guest

    die datei kommt erst relativ spät und man kann den download von vielen der zusätzlichen sachen blockieren.

    ich habe mich mit folgeder .bat gespielt und es funktioniert recht gut, aber man muss mit ~100kb zusätztlichem download leben:
    Code:
    @echo off
    wget -r -l 1 -H --exclude-domains=get.mirando.de,pagead2.googlesyndication.com,www.google-analytics.com http://www.fast-load.net//index.php?pid=cd2473eef7d52947c67e60b4326d4a9f
    
    dir /s /b *.rar > rarpath.tmp
    for /F "eol=? delims=?" %%i in (rarpath.tmp) do move "%%i" .
    del rarpath.tmp
    das problem ist offenbar dieses "download ticket", das der server haben will. daher kann man keinen dauerhaften direkten link auf die datei angeben.
     
  10. jipi thx es geht danke danke du hast mein problem gelöst ich versteh zwar nicht ganz was du da mit "dir" "for" und "del" gemacht hast aber super arbeit thx. wenn du magst kannst du mir ja die letzten 3 zeilen noch erklärn das ich des auch peil!
     
  11. Michi0815

    Michi0815 Guest

    die kopieren nur die heruntergeladene datei aus dem unterordner in dem sie wget abspeichert in den "haupt ordner", in dem die .bat liegt.

    dir /s /b *.rar > rarpath.tmp
    -> sucht alle .rar dateien in den unterordnern (sollte nur eine sein) und speichert den dateinamen in der datei rarpath.tmp

    for /F "eol=? delims=?" %%i in (rarpath.tmp) do move "%%i" .
    -> liest den dateinamen aus der rarpath.tmp aus und verschiebt die datei in das aktuelle verzeichnis

    del rarpath.tmp
    -> löscht die hilfsdatei wieder

    edit: soll ich noch ein oder 2 zeilen dazuschreiben, dass die zusätzlich heruntergeladenen dateien auch wieder gelöscht werden? :jump:
     
  12. gerne dann hab ich nicht so viel müll!
     
  13. Michi0815

    Michi0815 Guest

    Code:
    @echo off
    :: <- dies ist ein Kommentar
    
    :: wir merken uns welche Ordner später NICHT gelöscht werden sollen
    echo . > dont_erase_these.tmp
    dir /AD /B * >> dont_erase_these.tmp
    
    :: Herunterladen... 
    wget -r -l 1 -H --exclude-domains=get.mirando.de,pagead2.googlesyndication.com,www.google-analytics.com http://www.fast-load.net//index.php?pid=cd2473eef7d52947c67e60b4326d4a9f
    
    :: die .rar aus ihrem Ordener in das aktuelle Verzeichnis schieben
    dir /S /B *.rar > rarpath.tmp
    for /F "eol=? delims=?" %%i in (rarpath.tmp) do move "%%i" .
    
    :: die im Laufe der .bat erstellen Ordner löschen
    echo . > all_the_folders.tmp
    dir /AD /B * >> all_the_folders.tmp
    for /F "eol=? delims=?" %%i in (all_the_folders.tmp) do ( type dont_erase_these.tmp | find /I /C "%%i" > ergebnis.tmp
    							  for /F "eol=? delims=?" %%j in (ergebnis.tmp) do if %%j.==0. rd /S /Q %%i
    							)
    
    :: aufräumen...
    del rarpath.tmp
    del dont_erase_these.tmp
    del all_the_folders.tmp
    del ergebnis.tmp
     
  14. nochmal danke danke danke find ich toll wie du dich damit auskennst!
     
Thread Status:
Not open for further replies.

Share This Page