Blue Prism でマインスイーパーを自動化する(概要編)
在宅勤務ってよォ~・・・
こんな感じ👇☆
Blue Prism でマインスイーパーを自動化する
事の発端はこの動画👇。
自分でやったらどうなるかな、
という軽い気持ちで始めてみたが、、
なかなか手ごわい💦💦
「1」の周囲に旗を立てるだけで一苦労
こちらのサイトはWeb版のマインスイーパーで、
かなり識別しやすい構造になっている。
(セルごとにパスやクラス名、IDなどが一意になっている)
しかし、実際にマインスイーパーをプレイ
しようと思うと、これがなかなか一苦労である。
たとえば、「1」の周りに旗を立てようと思った場合、
・・・つまりこういう場合に、
こうしたい感じだが、、
このとき、HTML的には以下のようになっています。
IDから、そのセルの位置情報を取ることができて、
クラス名(className)からセルの状態
(開いてる/開いてない、数字がいくつか)
を取ることができる。
後は、地道にIDやクラス名をチェックして、
- 「1」を探す
- 「1」の周辺が開いてるかどうかをチェック
- 一か所だけ閉じていたら、そのセルを右クリックして旗を立てる
でOK。
やった結果が👇
「1」の周囲に旗があったら、他を全部開ける
「1」の周囲に旗があったら、
他の周囲のセルを開けられます。
こんなケースがあったら、
こんな風にできる。
これも、さっきと同様に周囲のセルを調べて、
条件に合うセルを左クリックしていけばOK。
やった結果が👇
「2」についても、同様に処理していく
「1」について処理できれば、
「2」についても同様に処理できます。
(ちょっとだけ複雑にはなるが。。)
「2」で旗を立てられるのは、
「2」の周囲に閉じているセルが
2つだけある場合。
「2」の周囲のセルを開けられるのは、
「2」の周囲に旗が2つ立ってる場合。
これをやった結果が👇。
マインの配置にもよるが、
「1」と「2」を処理するだけで、
クリアできちゃうケースもあります☆
やったぜ。
まとめ
- Blue Prism でマインスイーパーを自動化した(Web版)
- 技術的に難しいというより、アルゴリズムを考える勉強になるかも
- いいリハビリになったぜ!
詳しい解説動画は、、
また別途~☆
(トンヅラ)