(木)管理ページからダウンロードしたデータがNNNNN.csvという名前なのに、中をみるとタブ区切りでびっくりしてたんだけど、perlでいつものようにごそごそやると文字化け。エクセルに読み込んで別名保存すればいつもの意図通り。エクセルで保存すると文字コードはcp932、いつも通りになるからだ。BOM付き、でビックリ。これはperlで扱いにくい文字コードで、確か以前悶絶して諦めた記憶。結局一度エクセルなどに読み込ませて別名保存でcp932にしてからperlで処理していた。今回、頻度ボリュームともけっこうあるので、こんなひと手間をかけたくない。perlだけで処理したい。いうことでぐーぐる様。WindowsでPerlを使ってUnicode処理(1)http://blog.livedoor.jp/numa2666/archives/52344850.html↑こちらのサイトを参考にさせていただきました。ありがとうございます。}詳細は上記サイト参照。ここではやってることの説明だけ。理解してるわけでなく、結果オーライでやってるので間違ってる可能性があるけど。・入力はバイナリモードで読み込む必要がある。・ファイル全部一気読みのために、入力レコードのセパレーターを殺す。・utf-16でデコード(スクリプトで処理するため)perlの内部形式にデコードしてしまえば、あとはそのまま処理してもいいだろうし、他の文字コードにエンコードしてもいいし。ここから先はいつも通り、となる。...にしても、どうしてutf16なんてものがあるんだろう。(perlで扱いにくいってだけなのかもしれないけど)スゲーめんどくさい。(水)一昨日、新元号の発表があった4月1日に国立国会図書館の書誌データAPIが解禁となった。今までも検索などに使えていたけど、データベースとしてガツガツ使うには登録が必要だったり面倒くさかったのが、4月1日からは誰でも自由に使ってもかまわんぜ!になった。ことで、今さら国立国会図書館の書誌データAPIをごそごそ覗いてみた。国立国会図書館サーチについて>API仕様の概要https://iss.ndl.go.jp/information/api/riyou/わたしの、というかわたしが公開しているサイトの使い方は前にも書いた通り。「ISBNをキーにして書誌データと書影URLを取得したい」たとえば、スティーヴン・キングの『シャイニング』ISBNは978-4167705633これを国立国会図書館のAPIで探すには以下https://iss.ndl.go.jp/api/opensearch?isbn=978-4167705633→書誌情報のXMLが返ってくるhttps://iss.ndl.go.jp/api/openurl?isbn=978-4167705633→検索結果ページが返ってくるhttps://iss.ndl.go.jp/api/sru?operation=searchRetrieve&maximumRecords=10&query=isbn%3d9784167705633→書誌情報XMLが返ってくる(このsruはさらに細かく検索方法の指定もできる)うちの場合、必要な書誌情報はopensearchで十分。著者についてももろもろ考慮されて(同性同名や読みなど)おり、データのクオリティは信用できる。https://www.ndl.go.jp/jp/data/faq/author.html蔵書のある図書館の情報なども取得できるので、位置情報と合わせて「目当ての本がある最寄りの図書館」なんて検索も実装できるし、その手のアプリがすでにあるのは、国会図書館のデータが元ネタじゃないかな。書影がないのはほんと残念。本棚を眺める楽しみのひとつ、というか欠かせないのが表紙だもんなあ。基本的な書誌情報は国立国会図書館で、書影・表示画像はamazonなどのショップサイトのURLを別途取得...とか1冊の本のために2回も外部にリクエストしてるとサイトの表示がもたつく原因になってしまう。ことで、うちのサイトのデータ取得方法は現状のままとする。国会図書館のデータはまた何か別の用途で利用させてもらおう。したデータは見ていて気持ちいい(データオタク)ちなみに。日本出版インフラセンター」という版元主導のところも3月25日に書誌データベースのサイトをオープンしたけど、APIもなく、手入力でポチポチ検索できるだけ、なのでスルー。