退屈なことはPythonにやらせよう(3/E)

 今回は第3弾として、Marshal Enterprisesのダウンロードページで、

ダウンロードファイルの変更有無をPythonに判定させてみた。

変更があった場合は、下図赤枠のように、新しく登録されたファイル名を表示する。

削除されたファイルは、表示しない(必要がないので)。

プログラムソースを下記に示す。

(補足)

1.考え方

  次のように段階に分けて該当するファイル名を含む要素(< >で囲まれたHTMLのタグ)を抽出する。

(1)<sapn>を含む要素のみ抽出する。

(2)’DOWNLOAD_FILE_NAME_RENDERED’を含む要素のみ抽出する。

(3)’x-el x-el-span c1-1 c1-2 c1-16 c1-17 c1-18 c1-43 c1-c c1-1a c1-1b c1-1c c1-b c

1-6o c1-d c1-e x-d-ux x-d-aid x-d-route’ を含む要素のみ抽出する。

 

これは、下図赤枠のように、DOWNLOADファイルの要素を特定するための情報を見つける事で可能になる。

2.ファイル名の取り出し方

(1)ファイル名は、< >で囲まれた文字列で挟まれているので、この文字列を削除する。

(2)文字列の削除方法は、'<[^<|^>]*>’の正規化表現を使って、reモジュールで行う。

 

2019/10/21追記

 WEBページの内容が変更なっているが、プログラムではSameになる不具合が生じた。

調べたところ、class名称で絞り込む処理が適切ではない事が分かった。そこで、以前の

ソースでelems3に抽出する処理を削除し、elems2の内容を正規表現処理に渡すように

変更した。上記のソースコードは、この変更が反映されているものである。

 

<個人的な感想>

 いや~、とても便利である。Marshal Enterpreisesのホームページには、変更来歴が

記載されていないので、変更の有無は目視で確認するしかなかった。ファイルの名称に

日付が含まれていれば分かるが、そうでないものは分からない。

今回のPythonプログラムは、とても役に立つ。

 

<リンク>

ブログのトップページは、こちら

バタイユゲーム情報班のホームページは、こちら