2010-04-14 8 views
6

Ich habe eine site, die ich mit Unix wget herunterladen möchte. Wenn Sie den Quellcode und den Inhalt der Datei betrachten, enthält sie den Abschnitt SUMMARY. jedoch nach einer wget Befehl wie folgt ausführen:Wie 'wget' aktivieren, um den gesamten Inhalt von HTML mit Javascript herunterladen

wget -O downdloadedtext.txt http://www.ncbi.nlm.nih.gov/IEB/Research/Acembly/av.cgi?db=mouse&c=gene&a=fiche&l=2610008E11Rik 

Der Inhalt des downdloadedtext.txt ist unvollständig und anders mit dem Quellcode dieser Site. Zum Beispiel enthält es keinen Abschnitt ZUSAMMENFASSUNG. Gibt es eine korrekte Methode, um den vollständigen Inhalt korrekt zu erhalten?

Der Grund, warum ich dies frage, weil ich den Download von verschiedenen Werten in diesem HTML automatisieren möchte.

+0

Ich verstehe nicht. Welche Unterschiede gibt es im Quellcode? Und was hat Javascript damit zu tun? –

+0

@Pekka: Der Körper, der Javascript enthält, wird nicht heruntergeladen. Bitte versuchen Sie es zu sehen. – neversaint

+0

Ich habe jetzt nicht wget handy (auf einer Windows-Maschine). Ist der tatsächliche * body * anders oder werden die js-Dateien nicht heruntergeladen? –

Antwort

11

Sie müssen den Link in Anführungszeichen setzen:

wget -O downdloadedtext.txt 'http://www.ncbi.nlm.nih.gov/IEB/Research/Acembly/av.cgi?db=mouse&c=gene&a=fiche&l=2610008E11Rik' 

Dies liegt daran, die & eine besondere Bedeutung hat und den Befehl in mehrere Befehle aufgeteilt.

3

Das Zeichen & hat in Shells eine besondere Bedeutung. Zitiere den URI so, dass du tatsächlich den URI anforderst, den du anfordern möchtest.

+0

@DD: Wie zu zitieren? Ich habe versucht "\ & l = 2610008E11Rik", aber immer noch fehlgeschlagen. – neversaint

+0

Versuchen Sie '&' anstelle von '&'. –

+0

@Pekka: Danke, aber immer noch keine Wirkung. – neversaint

2

Sie können das -p (--page-prerequisites) Flag verwenden, um wget mitzuteilen, um verknüpfte Ressourcen abzurufen. Von man wget:

:

Diese Option bewirkt, dass Wget alle Dateien herunterlädt, die zur korrekten Anzeige einer bestimmten HTML-Seite erforderlich sind. Dazu gehören beispielsweise eingebettete Bilder, Sounds und referenzierte Stylesheets.

Sie aussehen könnte auch an der --follow-tags Option, die Sie begrenzen lässt, dass Prozess:

Wget eine interne Tabelle von HTML-Tag/Attributpaare hat, dass sie der Auffassung ist, wenn für verknüpfte Dokumente während einer rekursiven Suche Abruf. Wenn ein Benutzer nur eine Untergruppe dieser Tags berücksichtigen möchte, sollte er diese Tags in einer durch Kommas getrennten Liste mit dieser Option angeben.

+0

@ TJC: Das wird nicht tun. Ich möchte keinen Inhalt der verlinkten Quelle erhalten. Ich möchte nur den vollständigen Inhalt dieser Website abrufen. – neversaint

+0

@neversaint Ich denke du meinst "Seite", nicht "Seite" –

Verwandte Themen