Warum führt das zweimalige Herunterladen derselben Webseite mit wget zu zwei unterschiedlichen Dateien?

Warum führt das zweimalige Herunterladen derselben Webseite mit wget zu zwei unterschiedlichen Dateien?

Ich versuche, ein Skript zu schreiben, das mich benachrichtigt, wenn sich eine statische Webseite geändert hat. Dazu lade ich wgetdie Webseite herunter und diffüberprüfe, ob sie sich geändert hat oder nicht. Ich verwende eine virtuelle Ubuntu 20.04 LTS-Maschine. Hier ist das Beispiel:

$ wget --quiet https://twiki.di.uniroma1.it/twiki/view/Reti_Avanzate/InternetOfThings2021 -O file1
$ wget --quiet https://twiki.di.uniroma1.it/twiki/view/Reti_Avanzate/InternetOfThings2021 -O file2
$ diff -q file1 file2
Files file1 and file2 differ

Wie man sieht, diffgibt es Unterschiede zwischen den beiden Dateien. Warum? Auch wenn ich versuche, sie zu vergleichen, diff -ysehen sie für mich gleich aus.

AKTUALISIEREN

Die Suche nach Unterschieden ergab git diff --color-words -- file1 file2folgendes Ergebnis:

Unterschiede

Offenbar gibt es in einer der beiden Dateien ein Feld, in dem der Zeitstempel eingetragen wird, <!--GENERATED_HEADERS-->welches in der anderen fehlt.

Irgendeine Idee, wie man das Problem lösen könnte?

Antwort1

Sie können dieses Problem lösen, indem Sie w3m mit -dumpeiner Option verwenden, die Tags beim Rendern der Seite ignoriert.

$ w3m -dump  https://twiki.di.uniroma1.it/twiki/view/Reti_Avanzate/InternetOfThings2021 > file1
$ w3m -dump  https://twiki.di.uniroma1.it/twiki/view/Reti_Avanzate/InternetOfThings2021 > file2
$ if cmp -s file1 file2; then echo "Files are not different"; fi
  Files are not different                                                              
$

Antwort2

Eine weitere "Antwort" nicht darauf, wie man das Problem löst, sondern was dies verursacht: Die verwendete Version von (anscheinend) TiddlyWiki scheint ihre Ausgabe zu generierenmit zufälliger Tag-Reihenfolgein HTML-Elementen. Beispiele:

--- file1
+++ file2
@@ -703,881 +703,881 @@
[...]
-<td valign="top" bgcolor="#ffffff" class="twikiTableCol2" align="left"> r1 </td>
[...]
+<td bgcolor="#ffffff" class="twikiTableCol2" align="left" valign="top"> r1 </td>
[...]

Dies wiederholt sich für Attribute in Tabellen, Bildern und Links.

verwandte Informationen