sironekotoroの日記

Perl で楽をしたい

Perl入学式 in 東京 第5回 ピザ会での課題

Perl入学式 in 東京では講義の後にピザ会を実施し、ピザとジュース飲んで雑談する時間を設けています。
興が乗ってくると、id:xtetsujiさんが課題を出し、会場にあるプロジェクターを使って、ライブコーディングを行ったりしています。

昨日の課題は、NHKの首相動静のCSVPerlでパースしてみる、というものでした。

www.nhk.or.jp

まず、このファイルの文字コードですが、UTF-8ではありません。cp932でもありません。

$ file 201808.csv
201808.csv: Little-endian UTF-16 Unicode text, with CRLF, LF line terminators

UTF-16、初めて遭遇。

そしてこのファイル、拡張子こそcsvですが、タブ区切りです。だったら拡張子はtsvにするべきでは。

さらに、複数行にまたがる、日付が違う、月が違う、など、酷いファイルという他ない出来です。

とりあえず、できるところまで書いてみたものがこちらです。

NHKの首相動静 自称CSVファイルをPerlでパースしようとするも、元のファイルが間違ってるので出力も間違ってるという悲しいオチ — Bitbucket

NHKのご意見フォームにどうにかしろ!って意見あげるつもりです。