静的Webページが変更されたときに通知するスクリプトを作成しようとしています。そのために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
ご覧のとおり、2つの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>
[...]
テーブル、イメージ、リンクのプロパティに対してこの操作を繰り返します。