当ブログはシスプリブログでもおっぱいブログでもなく埼玉西武ライオンズ応援ブログなわけですが、そうなるとシーズン中は試合の結果をまとめる作業が発生します。
かつてWindowsを使っていたころは秀丸マクロでスポーツ新聞社のサイトから結果を取得し、ブログの記事として使いやすい形に整形していました。しかし、このところの私のマシンはMacなので、秀丸は(OS X上では)使えません。そして、ブログのためだけにわざわざWindowsを立ち上げるのも面倒です。というわけで、Sublime Text 2用のマクロを作ってみました。これならWindowsにでも使えますし。
[https://github.com/7pairs/NikkanScore](https://github.com/7pairs/NikkanScore)
どこのサイトを見ているかはリポジトリ名でお察しくださいw
当初はHTMLParserを使って処理を書いていたのですが、どうにも上手く行かなかったのでゴリゴリと力技で解析しています。まあ、HTMLParserもわりと力技ではあるのですが……。
ちなみに、HTMLParserが上手く動かなかったのは、以下の部分の解析に失敗していたからです。
document.write('<scr');
document.write('ipt src="' + impAserver + '/jnserver/acc_random=' + impArnd + impAtarget + '/pageid=' + impApid + '">');
script要素の中身なので、その中でタグの解析はしないでほしいのですが、「<scr」以降をタグとして処理しようとして異常終了してしまいます。これはSublime Text 2のマクロエンジンとして使われているPythonのバージョンが2.6.7だからのようです。同じ処理を2.7.5で書いたときにはこのような事象は発生しませんでした。Sublime Text 3ではエンジンがPython3になるようなので、そうなったらこんな苦労をしなくても良くなるんでしょうね。