Probleme beim Speichern der gewünschten Dateien - Ausschließen von Verzeichnissen scheint nicht zu funktionieren

637
baronmax

Ich möchte alle Regierungsausgaben über 500 Pfund vom Ministerium für Energie und Klimawandel herunterladen. Dies sind .xls- und .xlsx-Dateien, die einmal pro Monat generiert werden. Sie werden an folgenden Orten gespeichert:

https://www.gov.uk/government/uploads/system/uploads/attachment_data/file/209425/20130627_April_2013_PUS_.xls

Dabei ist die Nummer nach Datei eine eindeutige Nummer und der Dateiname hat keine Namenskonsistenz. Diese Dateien werden von einzelnen monatlichen Seiten verlinkt, die folgende Form haben:

https: // www.gov.uk/government/publications/departmental-spend-over-500-april-2013

welche wiederum von einer Indexseite verlinkt wird:

https://www.gov.uk/government/collections/departmental-spend-over-500

Dieser Befehl funktioniert:

wget -r --force-html -e robots=off -A xls,xlsx,"" -l 2 https://www.gov.uk/government/collections/departmental-spend-over-500 

Aber neben den XLS- und XLSX-Dateien bekomme ich auch das komplette Verzeichnis der .gov.uk-Site (bis auf zwei Links, von denen ich angefangen habe), die ~ 100 MB Text / HTML-Dateien außer den XLS-Dateien herunterlädt Das ist ein bisschen übertrieben. Meine Frage ist also:

Wie kann ich wget nur aus den oben genannten Verzeichnissen machen oder alternativ offensichtliche ausschließen, die ich nicht möchte?

Ich habe die offensichtlichen Befehle -I und -X, -D usw. ausprobiert, aber ohne Erfolg. NB: Ich musste sowohl "" als auch "xls" -Dateien in den "-A-Schalter" einbinden, sonst würden die verknüpften HTML-Dateien ignoriert ...

Irgendwelche Ratschläge dankbar erhalten! Dies ist übrigens auf einem Mac.

1

1 Antwort auf die Frage

1
baronmax

Ha! Endlich hat es geklappt. Im Include müssen Sie den vollständigen Pfad für alle Verzeichnisse angeben - NICHT die URL:

wget -r -A xls,xlsx,"" -l 2 -I /government/uploads/system/uploads/attachment_data/file/,/government/publications/,/government/collections/departmental-spend-over-500 https://www.gov.uk/government/collections/departmental-spend-over-500 

Nicht offensichtlich - naja, sowieso nicht für mich ...

(Scrolle nach rechts in der Code-Box, um alles zu sehen)

Edit: Eigentlich besser - ich habe es hier aufgeteilt:

wget -r -A xls,xlsx,"" -l 2  -I /government/uploads/system/uploads/attachment_data/file/, /government/publications/, /government/collections/departmental-spend-over-500 https://www.gov.uk/government/collections/departmental-spend-over-500 

Zeile 1: rekursiv, xls & xlsx & -Dateien einschließen, die keine Erweiterungen haben (in diesem Fall HTML-Dateien ...) und zwei Ebenen von der in Zeile 5 angegebenen Ebene aus ausführen

Zeilen 2-4: Fügen Sie diese Pfade / Verzeichnisse von der obersten URL ein (dh schließen Sie alles andere aus).

Zeile 5: Wo soll ich anfangen?