Почему при двойной загрузке одной и той же веб-страницы с помощью wget создаются два разных файла?

Почему при двойной загрузке одной и той же веб-страницы с помощью wget создаются два разных файла?

Я пытаюсь написать скрипт, который уведомляет меня об изменении статической веб-страницы. Для этого я использую wgetдля загрузки веб-страницы и diffпроверки, изменилась ли она или нет. Я работаю на виртуальной машине Ubuntu 20.04 LTS. Вот пример:

$ 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

Как вы видите, diffотчеты о различиях между двумя файлами. Почему? Даже если я пытаюсь сравнить их с diff -yони выглядят для меня одинаково.

ОБНОВЛЯТЬ

Поиск различий git diff --color-words -- file1 file2дал следующий результат:

Различия

Судя по всему, есть поле, в которое добавляется временная метка, и в одном из двух файлов оно <!--GENERATED_HEADERS-->отсутствует в другом.

Есть идеи, как это решить?

решение1

Эту проблему можно решить, используя w3m с -dumpопцией, которая игнорирует теги при рендеринге страницы.

$ 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                                                              
$

решение2

Еще один «ответ» не о том, как решить эту проблему, а о том, что ее вызывает: используемая версия (судя по всему) TiddlyWiki, похоже, генерирует свой выводсо случайным порядком теговв элементах HTML. Примеры:

--- 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>
[...]

Это повторяется для атрибутов в таблицах, изображениях, ссылках.

Связанный контент