2018年05月30日

NHK杯テレビ囲碁トーナメントの棋譜をSGF形式で管理できるようにする

NHK杯テレビ囲碁トーナメントでおこなわれた対局の棋譜は、すべてウェブサイトで公開されているのですが、ブラウザで碁盤を表示させてその碁盤上に着手を再現していく仕組みになっています。

NHK杯テレビ囲碁トーナメント公式ウェブサイト

2018年5月27日(日)に放送された「第66回NHK杯テレビ囲碁トーナメント一回戦第9局 伊田篤史八段対藤沢里菜女流立葵杯」戦の場合、トップページから該当する対局の「棋譜を見る」ボタンをクリックすると、「http://cgi2.nhk.or.jp/goshogi/kifu/igs.cgi?d=20180527」というURLで棋譜を見ることができます。
最後の八桁番号が放送日をあらわしており、たとえば2018年3月18日(日)に放送された前回第65回の決勝戦だったら、「http://cgi2.nhk.or.jp/goshogi/kifu/igs.cgi?d=20180318」というURLになります。
ただたんに棋譜を追いかけるだけならこれでもいいのですが、じっさいに検討してみたいと思った場合は、やはりSGF形式に変換して棋譜管理ソフトにかけられたほうがはるかに便利です。
棋譜管理ソフトで一手一手入力していくわけにもいきませんから、なんらかのかたちで棋譜データを取得のうえ、SGF形式に変換できるツールがあればなあと思っていたところ・・・。
NHK 杯囲碁トーナメントの棋譜ファイルを SGF 形式で入手する:Part 1. 棋譜データの取得」「NHK 杯囲碁トーナメントの棋譜ファイルを SGF 形式で入手する:Part 2. SGF 形式への変換」に情報があり、棋譜データの取得用とSGF形式への変換用に、それぞれRubyスクリプトも公開されていました。
もしRuby環境がない場合は、たとえばUbuntuなら以下のコマンドを実行して、あらかじめRubyをインストールしておく必要があります。

$ sudo apt install ruby


棋譜データの取得は、「NHK 杯囲碁トーナメントの棋譜ファイルを SGF 形式で入手する:Part 1. 棋譜データの取得」に記載されているとおりの「get-score.rb」スクリプトを作成し、第xx回の棋譜であれば「$ ruby get-score.rb xx」を実行するだけ。
ただし、事前に「./date/date-xx.txt」ファイルを作成し、そこに棋譜データを取得したい対局の放送日を列記しておく必要があります。
このファイルの内容は、たとえば第65回の準決勝戦二局+決勝戦の計三局を対象とするなら、以下のようにその三局の放送日を列記するかたちです。

3月4日
3月11日
3月18日


棋譜データをうまく取得できれば、「./score/score-xx」ディレクトリが作成され、そのなかに取得した棋譜データが「xxxxxxxx.txt」形式で保管されます。
取得した棋譜データをSGF形式へ変換するには、「NHK 杯囲碁トーナメントの棋譜ファイルを SGF 形式で入手する:Part 2. SGF 形式への変換」に記載されているとおりの「score2sgf.rb」スクリプトを作成し、「$ ruby score2sgf.rb ./score/score-xx/xxxxxxxx.txt」を実行します。
もともとのNHK杯独自形式の棋譜データ「xxxxxxxx.txt」がSGFファイル「xxxxxxxx.sgf」に変換され、お好みの棋譜管理ソフトから管理できるようになります。
なお、取得した第xx回の棋譜データを一括してSGF形式に変換するには、Ubuntu上のbashターミナルから以下のコマンドを実行すればO.K.です。

$ for f in ./score/score-xx/*.txt; do
> ruby score2sgf.rb $f
> done
$


これまではテレビを見ながら一手一手入力してSGFファイルをつくったりもしていたのですが、上記の方法を導入することによってhatakazuの人生からひとつの困難が取りのぞかれ、すこし幸せになることができました。
記して感謝もうしあげます。


参考ウェブページ一覧表(順不同)

http://cgi2.nhk.or.jp/goshogi/gotou/
https://ochaochaocha3.hateblo.jp/entry/2013/01/31/getting-score-files-of-go-nhk-cup-in-sgf-format-part-1
https://ochaochaocha3.hateblo.jp/entry/2013/02/09/getting-score-files-of-go-nhk-cup-in-sgf-format-part-2
posted by hatakazu at 21:31| Comment(0) | 囲碁ソフトのこと | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。