メモ帳DPA

ぐぐってあまり引っかからないような何かがあったら書いたりする

激安4k液晶 Seiki SE39UY04 買った

購入先

http://www.amazon.com/dp/B00DOPGO2G

Item Subtotal $699.00
Shipping & Handling $120.62
Total Before Tax $819.62
Import Fees Deposit $40.98
Order Total $860.60

トータル8万強で米Amazonからそのまま買えます。国内の主要メーカの4kテレビは30万くらいからなので驚異的な安さです。

現状米Amazonから買えるのは39型のみで、50型は国外発送してない模様です。

9/27注文、9/31到着でした。海外発送でしかもデカイ品のわりに4日は大分早めかと思います。


※追記:$499に値下げしたようです。6万ちょいなのでさらに安い。

内容物

  • 本体
  • マニュアル
  • リモコン+電池
  • HDMIケーブル

分厚いガイドが何冊も付いてきたりするのが国内テレビだとありがちですが、これは必要最小限のものだけしか入ってません。

入出力

こんな感じ。標準的なものはあらかた揃ってますが、光デジタル出力やディスプレイポートは無しです。

画面について

遅延

あんまり遅延に敏感な方じゃないのであくまで参考程度にですが、720p60Hz表示でLunaticRave2のタイミング補正で調整した感じではREGZA Z1Sより+20〜30ms程度の遅延に感じます。
ゲームダイレクトのカタログスペックから逆算すると大体2〜3フレ程度の遅延な気がします。
ただし、4k表示時はもっと大幅に遅れてる感じがします。


※追記:ファームウェアの更新で遅延が軽減しました。

SEIKI 4K HDTV: Flashing 50″ Firmware on 39″ Improves Performance! | Blur Busters

残像

残像感はREGZA Z1Sとそんなに変わらないように思います。良くもなく悪くもなく。

表示

画面全体を単色表示して気付くレベルなので対して気になりませんが、画面端っこが中央より若干暗いです。(明るさが均等ではない)
全体の綺麗さについてはあまり気にしてないので良くわかりませんが、普通に使えるレベルかと思います。

設定
  • Contrast
  • Brightness
  • Color
  • Sharpness
  • Color Temp

標準的な調整は効きます。
PC用途ではデフォルトだと余計な補正で文字が非常に汚いです。Sharpnessを0にすると普通に映るようになります。必須設定。
輝度も眩しすぎない程度には落とせます。


※追記:メニュー→0000で入れる隠しモードからバックライト自体の調整も効きます。

欠点など

良いところはもう始めから分かりきっていて「半端無く安い価格で4kが手に入る」って一点が全てです。
当然安いなりの欠点が色々とあるわけで、これらを許容出来るかどうかに懸かってるかと思います。

たまに見失う

原因がグラボ(ZOTAC GT 640使用)かTVかわかりませんが、解像度変更時や一旦液晶の電源切ってからの立ち上げ時にたまに信号を見失います。
そうなった場合は一旦再起動するか再接続すれば再び認識されるものの結構面倒です。
ならばEDIDエミュレータを噛まして解決と行きたいところですが、4k対応に対応している機器がおそらく現状では無さそうです。
少なくともTMDS-EDIDは情報の保持は効くものの4kでは映像が映りませんでした。(FullHD以下だと映る)


※追記:ケーブルが原因でした。帯域使い切ってるせいなのかは不明ですが信号にはセンシティブみたいです。安物の長いHDMIケーブルだと駄目です。

音質が本当にひどい

数千円のスピーカーやイヤホンで満足できる耳でも明らかに分かるレベルで音がくぐもってます。100均のスピーカと五分かそれ以下くらい。
外部オーディオはとにかく安物でもいいので何かしら必須だと思ったほうが良いかと思います。

音量でかすぎ

ボリュームは0から100までの設定ですが"1"の時点でREGZA Z1Sだとだいたい音量"15"に相当する音が出ます。うるさい。
ソース側で調整すれば済むとはいえとっても使いづらいです。

入力切替ボタンだけで入力切替できない

入力切替ボタンを複数回押すだけでは切り替えられません。(メニューが出て消えるだけ)
切り替えるには、Sourceボタンを押す→メニューが出現するので上下キーで選択→OKキーを押す の操作が必要になります。
また、信号の来ていないソースや未接続のソースもスキップされずに普通に選択できてしまいます。邪魔です。

4k@60Hz非対応

HDMI2.0には対応しておらず、HDMI1.4までしか使えません。規格上帯域が足りないので4k出力時の周波数は30Hzに制限されます。(それ以外なら120Hz表示可能)
もっとも、4kに対応しさらに処理落ちせず60Hzとか120Hzで動くゲームなんて無いので、現状ではマウスポインタのスムーズさが失われる程度の影響しか無いです。
大体フルスクリーンで解像度落としてゲームやるので現状特に問題は感じてません。
PS4もゲームは4k非対応との話なので当面はコンテンツに期待できないんじゃないかと思います。

光デジタル出力無い

妥協しよう。

起動がちょい遅い

電源入れるとロゴが表示された後しばらく黒いままが続きます。押してから映るまでトータル15秒くらい掛かります。

テレビ見れない

この品は一応テレビですが日本の独自規格なんか対応してるはずがないので当然テレビ見れません。

参考

購入する際には以下が参考になります。
また、Amazonのレビュー欄も非常に情報充実している(ただし英語)ので眺めてみると良いかと思います。

http://applech2.com/archives/31330333.html

とにかく広くて安い

色々と細かい部分の詰めが甘いです。
が、4kは4kなので1枚だけで尋常じゃなく広い画面が手に入って個人的には満足してます。
上記の欠点が受け入れられるんなら買っちゃってもいいんじゃないかと思います。安いし。



(広すぎて持て余す図)


※追記:アームがいい感じに使えました

介護ベッド+PCでシンプルな廃人養成施設をつくろう - メモ帳DPA

SOUND VOLTEX BOOTH ランキング260日分による総合ランキング 作った

動画

作り方

大体以下の様な感じで作成しました。
他の集計するときも似たような感じでできるんじゃないかと思います。


以下からヒットチャート情報を毎日自動収集
SOUND VOLTEX BOOTH / FLOOR
最初はExcelvbaマクロ使ってましたが、Jsoup使うと数行で済むので楽です。(PASELIstと同方式)

以下からアーティスト情報や難易度などランキング以外の情報を収集(手動で適当に変換)
SOUND VOLTEX BOOTH/収録曲リスト - BEMANIWiki 2nd
SOUND VOLTEX @ wiki - 楽曲リスト(BOOTH)

公式サイトからジャケットを収集
SOUND VOLTEX BOOTH / FLOOR

以下から譜面を収集
未来サーバー

Excelに放り込み集計

シート上で動画用のレイアウトに整形し画像出力

適当に並べて音声を付ける

完成

データ

ここに置いておきますのでどうぞ。

https://www.dropbox.com/s/zdb8cib5ybmfvrt/sdvx1hitchartdata.csv

  • ちょこちょこ取りこぼしで抜けがあります。
  • 稼働初期のデータがありません。(ください)
  • 11/15までは1-10位までしかランキングが公開されていなかったため、11-20位のデータはありません。

6.1インチ端末 Ascend Mate 買った

のでレビューって程でもない感想を。


購入元

以下のページから2003/2月に$575でプリオーダで注文しました。
最初の発表では2月発売だったのが3/26まで延期され、結局発送されたのは3/29、到着が4/3でした。

http://www.liaow.com/index.php

値段は現在はプリオーダ時点から下がって$529になってます。
差額分の補填ってことでケース($38)と保護フィルム2枚($17.9)をおまけしてもらいました。(計$631分なのでちょっと得)

なおここで売ってるフィルムはグレアです。アンチグレアが欲しかった…
ケースは蓋だけが微かにレザーっぽいものの全体的にはプラスチッキーです。


付属品


  • マニュアル
  • USBケーブル
  • ACUSBアダプタ
  • イヤホン
  • 謎のカレンダー
  • 海外端子用変換アダプタ(これだけなぜか箱の外に入ってた)

オプションとして

  • ケース
  • 保護フィルム

梱包はまんまiPhoneのそれです。

気になった点とか

指届かない

当然ですが画面対角線で結んで持ち手側半分くらいしか親指届かないのでフルキーだと辛いです。
内蔵の「Huaweiキーボード」は左右に寄せられるようにはなってますが英語/中国語のみしか使えないので意味なし。
ATOKGoogle日本語入力必須です。

EasyPanel

SMS/電卓/メモを他のアプリと同時に起動できる機能で、これ自体は確かに便利なんですが起動用のボタンを常に表示しておく必要があり邪魔です。
(iPhoneのAssistiveTouch的なあれ)

技適マーク

どう見ても付いて無いのでごにょごにょ…

解像度

どうせならFullHD欲しかったなぁって思います。
(SC05Dより横方向の解像度減ってるし)

分解

ばらし方がさっぱり分かりませんでした。
ネジ穴は全く見当たらないので、背面パネルを良い感じにそのまま引剥がさないと駄目そうです。人柱求む。
Suica仕込みたかったんですけど断念しました。

iOS意識しまくり

Huaweiクラウドなるサービスがあるらしく(iCloudのコピペ)登録するとオンラインバックアップ/同期や端末ファインダーが使えるっぽいです。
他にはiBooksのパクリの「iReader」が入っていたり、デフォルトのランチャ「Huaweiホーム」はまんまiOSのホーム画面だったりします。
梱包もそうですが言い逃れできないレベルで思いっきり露骨にパクリに行ってる感じがすごい。
(ちなみにHuaweiホームは本家iOSのそれより使いやすかったです)


良かったとこ羅列

画面でかい


自炊書籍読む用に買ったんですが思惑通り凄い読みやすいです。
ただし、画面サイズ的にほとんど単ページでしか使わないので大して問題ないですが解像度がHDなのでやっぱり見開きだと厳しめです。

ポケットに入る

ポケットに入るので取り回しが良くいつでも使えて便利です。
この一点の差で持ち歩きやすさがタブレットとは段違いです。
額縁が薄いのでサイズは横幅はデカめの端末と大して変わらず縦方向が長めな感じです。

バッテリすごい

結局画面でかい分消費が激しいんだろと思いきや省電力機能が優秀なのか何なのかよくわかりませんが予想以上に持ちます。
GalaxyNoteで7時間強程度でバッテリ切れる使い方をしてましたが、この機種で同じ使い方すると20時間弱程度いけます。

最初からroot化されてた

多分ショップ側のサービス?だと思われます。
情報出回るまでroot化は控えとこうと思ってたんで助かりました。
ついでに言語もちゃんと最初から日本語に設定済みでした。

変な制約なし

普通にGooglePlayが使えて普通の端末と同じように普通に使えます。
なお謎の中華アプリが幾つか入ってます適当に止めといて問題ないです。
純正テザリングも対応してるっぽいです。

MicroSD64GB認識した

32GBまでとなってますが問題なく使えてます。

ドライバ入り

USB接続方法を「MTP」「PTP」の他に「HiSuite」が選択できます。
HiSuiteは早い話がiTunesiPhoneの同期方法のパクリで、このモードで接続するとそのまま管理アプリと一緒にUSBドライバもインストール出来ます。


デカい、説明不要

外で使う自炊ビューアとして個人的には現状ではベストだと思います。
スペックも十分な感じなのでいろいろと集約できます。
とにかくデカイのがほしいんならおすすめ。

PASELIの履歴/統計情報閲覧ツール作った(PASELIst)

※4/11追記
PlayStoreに置いてましたが公開取り下げました。理由は察して下さい。
アプリ自体はサーバ側の仕様が変わるまでは問題なく使えるかとは思います。

とりあえずapkとソースはここに置いておくのであとは好きに使って下さい。
※2014/12/07更新:myKONAMIの仕様変更のためログインを手動処理にして対応

ソース
https://github.com/de0/PASELIst
アプリ本体(apk)
https://github.com/de0/PASELIst/blob/master/PASELIst/PASELIst.apk

ダウンロード

ここからどうぞ

https://play.google.com/store/apps/details?id=com.de0.paselist

できること

https://my.konami.net/login.do → PASELI → 購入履歴
の内容を片っ端から取り込み、以下の形式で表示します。

表示されたリストの項目を選択するともう一段階詳細表示できます。

・利用履歴 → 選択項目のみの表示
・月別集計 → 選択月の機種別合計
・年別集計 → 選択年の機種別合計
・統計情報 → 選択機種の統計


統計情報の内容と補足

アプリ上ではスペースの都合上あんまり細かいこと書けなかったので補足。

項目 概要 共有ボタン対応
利用総額 なんと1Pは日本円にして1円なのです
平均利用額 プレイしない日はカウント外。ゲーセン行った日は一日で大体いくら使うか
最高利用額 そのまま。
プレイ日数 1回以上PASELI消費した日の数。
プレイ頻度 多分総額の大小よりもこの値のほうがゲーセン依存っぷりが出る
総チャージ額 そのまま。
平均チャージ額 チャージしなかった日はカウント外
最高チャージ額 一日でチャージした合計額の最高
チャージ日数 1回以上PASELIチャージした日の数
チャージ頻度 そのまま。
概算プレイ時間 100P10分換算。カード引きまくったりPFreeばっかやってたりする人は実時間とズレます。
最頻プレイ曜日 そのまま。
最長連続プレイ 1回でもプレイした日が何日続いたか。pop'nでいうところのX日連続プレー
最長未プレイ間隔 プレイしてから次にプレイした日までの最大日数。(現在進行形でずっとプレイしてないのは対象外。それもカウントすると過去機種のデータが使いものにならないので)
初回プレイ日 Paseli対応のロケテ時の記録なども含む
最多プレイ機種 使用ポイント基準(回数ではなく)
利用予想額−今月 「今月の総額 / 今月の経過日数 * 30」プレイが偏ると結構変動するので参考程度に。
利用予想額−今年 「今年の総額 / 今年の経過日数 * 365」

既知の問題や仕様

低スペック端末だと落ちる

現状の処理方式だと多分どうしようもないです。(落ちる理由は後述)
諦めてExcel版使って下さい

複数アカウント非対応

使えるのは1アカウントだけです。
最初に登録したアカウントと別のアカウントで取得しようとすると正しく収集できません。

同じ日付の中の履歴が使用順にならない

同じ日に使った同機種は全て同じ項目にまとめられた上で、使用順とは関係ないと思われる謎の順序で表示されるっぽい(サーバ側がそうなってる)

保存したパスワードの文字数が変わってる(ように見える)

設定の前後で暗号化/復号化を行なっているので、入力した文字数とダイアログ上で表示される文字数は異なって見えます。
実際にはちゃんと入れたとおりの内容になってるので別に気にする必要はありません。
空欄にした場合でもダイアログ上では「●●●●…」となるのは「空欄」を暗号化したものが設定されているためです。

「あそこにベンツが停まってますね」

134万円を記録されたこちらの方が現時点での優勝です。おめでとうございます?(2013/3/27時点)

さらなる記録をお持ちの方の挑戦をお待ちしております。



パスワード保存の話

パスワードは暗号化して保存していますが、仕組み上セキュリティが大して強くありません。
(本アプリに限らずほとんどのAndroidアプリに言えることです)
パスを保存する場合は主に以下のようなリスクが有ることを認識しておいて下さい。

保存先へのアクセスについて
  1. root権限がないとデータの保存先のファイルは読めない
  2. しかしAndroid端末は簡単にroot化可能
  3. 保存されたデータは実質的に全て取得可能
暗号化について
  1. サービスにログインするためパスワードは復号化できる形式で保存する必要がある
  2. 暗号化/復号化する処理はアプリ内に格納されてる
  3. Androidアプリはapkファイルから簡単に逆コンパイル出来る
  4. どういう方法で暗号化処理してるか内容が分かる
  5. 保存されたパスワードが取得できてしまう
使おうワンタイムパスワード

とりあえずOTP使っとけば間違いないです。
たとえパスワードを抜かれてもトークンも一緒に持っていないとログインできません。

コナミスタイル : KONAMI OTP TOKEN (キーチェーン) | KONAMI STYLE
コナミOTPサービス ソフトウェアトークン - Google Play の Android アプリ

ただ、キーチェーン型が利用期間無制限で\1050なのに、ソフトウェア型が1年制限で\1000なの全く解せないんで何とかして下さい…

パスワードの扱いについて

どんな処理してるかは確認できるよという話

これ作っておいてどの口で言うかという感じですが、そもそも得体の知れない外部アプリにサービスのパスワードをホイホイ入れるべきではありません。

パスワードはログイン処理以外には全く使っていませんが、信用ならないという方は逆コンパイルすることで実際にソースを見れるので確認してみて下さい。
(上記の暗号化の話だと逆コンパイルしやすいのは完全にデメリットですが、実際の処理が追えるって点ではメリットだと思います)

非公式ツールを使うリスクの話

このツールに限らず、ログインを要するタイプのほぼ全ての非公式ツールは、もし悪意を持った作者が作ったら簡単にパスワードを取得出来ます。
わざわざツール自作するくらいのコアなユーザがそんな悪さをするかよって考え方もあるようですが、「やろうと思えば出来る」状態であるのが紛れも無い事実なのでその危険性は十分認識が必要です。

一番安全なのは使わないことですが、次に出来る対策として、ツール使用の前後でパスワードを一時的に変えるなどの対策も効果的です。(一番素晴らしいのは公式が提供することです…)


こういった不正取得への対策としてOTPは非常に有効です。
仮にパスワードが不正に取得されてしまった場合でも、トークンも同時に物理的に盗まれない限りはログインされるのを防ぐことができます。

各種非公式ツールを使うときにこそOTPを使うべきです。おすすめ。
ツールも徐々にOTPに対応していくとお互いのためにも良いんじゃないかと思います。

処理の話

通信内容

ネットワーク通信は以下の処理だけで使ってます。

  1. https://my.konami.net/login.do にアクセス
  2. 上記ページからIDとパス入れてログイン
  3. https://my.konami.net/paseli/login.kc に移動
  4. https://my.konami.net/paseli/payinfo.kc に移動
  5. 各履歴ページにアクセス
認証について

PASELIチャージサイトですが、ログインしてCookieを使いまわしたりだけでは認証が通りません。
強引な対策として、見えないWebviewが画面の中に仕込んでありそれをバックグラウンドから直接操作しながらJsinterface経由でソースを取得する、という力技を使っています。
そのため、取得中はずっとこのWebViewが保持されている必要があります。また、負荷も大幅にかかっています。

落ちる原因はほとんどこの処理方式によるものです。
低スペック端末だと、WebViewを動かすためのリソースの不足からエラーになります。
こればっかりはこの処理で取得してる限り(多分)どうしようもないので諦めて下さい。

また、UIスレッド外からのView操作はAndroidのプログラミング作法を破っています。
今のところはこの処理は動作しているものの、今後のOSアップデートで使えなくなる可能性もあります。
エミュレータでの動作もこの処理で引っかかって動作しない可能性がおそらく高いです。(未確認)

参考(この方法ほとんど情報が見つからないのでちょっと苦労した)

北から南や西を見て思うこと: WebViewを使ったスクレイピングの使い道

SDVX用ハイスピ計算機のAndroidアプリ作った

こんなの作った


習作感200%!!

JavaAndroidアプリ開発も、それ以前にGUI開発やEclipseの使い方すらも素人だったんで、とりあえず上辺だけでも触っとこうと作ってみました。
形になるまでだいぶ掛かるだろうと思ってたら環境やら解説が割と充実しててWebだけの情報から数時間*3日くらいで出来ました。すごい。

# ちなみにbluetoothのリダイアル機能だけをプロファイル切ったりせず殺すのを本当は作りたかったんだけど全然方法が見つからないので諦めた

緑数字付けて下さい

IIでこれが不要になるのに期待してます

Backblazeは容量は無制限だけどファイル数は無制限じゃなかった話

Backblaze

最高の無制限オンラインバックアップおよびクラウドストレージサービス

Backblazeってサービスを2年程使ってます。
$50/年で容量無制限のオンラインバックアップが出来るサービスです。


ちなみに後からソースネクストが3990円/年で国内向けに売り出しましたが、中身は一緒なようで同仕様かと思われます。

バックアップ止まったんですけど

ある日こんなメッセージが出てバックアップが停止され再開も効かなくなりました。

WARNING: Backblaze has stopped working properly on this computer! Your bzfileids.dat file is too large, please contact Backblaze customer support.

原因検討も付かないしplease contactとか言ってるので聞いてみました。

サポートの答え

解答抜粋

There is a very specific file on your disk that is part of Backblaze which has bloated up to be too large. It is called "bzfileids.dat" and is found here:


Mac: /Library/Backblaze.bzpkg/bzdata/bzbackup/bzfileids.dat
Windows Vista/7: C:\ProgramData\Backblaze\bzdata\bzbackup\bzfileids.dat
Windows XP: C:\Documents and Settings\All users.windows\Application data\backblazebzdata\bzbackup\bzfileids.dat


This is a very simple file, it is a mapping from your filenames to a totally unique integer ID that is anonymous that we use to identify your files in the Backblaze datacenter. This means we never know any of your file names, or file contents.


For some reason, your computer wants to backup a few million files and your bzfileids has grown very large (yours is over 1 GB). When bztransmit (the process that runs once per hour) starts up, it reads this bzfileids.dat file into RAM. On a normal machine, this is about 20 MB, but on your machine something has gone haywire and bzfileids has grown far too large.


Now, there are several things that contribute to this file being large, so you can think about how this happened and let us know. We're trying to understand this situation better:


A) If you have ever renamed a Time Machine folder at the top of your hard drive, Backblaze will bloat up trying to back it up. It is absolutely not supported to "back up a back up" and Backblaze can only function properly backing up the originals.


B) Lots of files. If you knew of a folder with hundreds of thousands of small files that didn't change much you could back them up differently or exclude them from Backblaze backups.


C) Renaming top level folders with a lot of files. For example, if your top level folder name is "/my_music" and it contains 100,000 file names in it, then when you rename it "/my_great_music" Backblaze needs to add all of those filenames to that bzfileids.dat file which bloats it up. So the best thing you can do is keep your enormous folders the same over a long period.


D) Shorter Path Names. It would be best if your hundreds of thousands of files are on a disk called "d" instead of "disk_that_contains_files" and the top level folder is called "f" instead of "folder_for_lots_of_files". Etc. The shorter the paths, the smaller the bzfileids.dat file is.


It's possible to shrink the bzfileids.dat in case they've been temporarily bloated by one of the above situations, however it requires reuploading all data to the Backblaze servers. You can follow these steps to do that:
1. Visit https://secure.backblaze.com/user_signin.htm and sign in to your Backblaze account with your email address and password.
2. Click on the "Account" link in the upper left hand corner
3. Select your "old" computer from the list of computers.
4. Click the "Delete Computer" link next to it. This will delete the backed up data, the bloated bzfileids.dat and free up the paid license.
5. Click on "Overview"
6. Click the download link for your operating system in the bottom right corner.
7. Install Backblaze.


Here's the problem. If you cannot reduce the number of files or path names significantly, then you absolutely are going to encounter this issue again. We are working on a fix for it, but it is proving to be very difficult and currently our engineering team has no ETA on a fix. If you uninstall and reinstall without changing anything, then your backup might start working again, but you will reencounter this problem a little ways down the road.

意訳

問題について
  • 対象のファイルとIDをbzfileids.datってファイルに書いて関連付けて管理してるるよ
  • このファイルがでかくなりすぎると(1GB超えると)バックアップできない仕様だよ
  • ファイル数数百万バックアップしようとすると起こるよ
  • 問題なのは分かってるし直そうとはしてるよ
  • でもすごい難しいんで今んとこ修正予定ないよ

# そんなのどこにも書いてなかったのに

対策

以下のどれかでbzfileids.datを小さく出来るよ

  • TimeMachineのフォルダとかのバックアップファイルをバックアップしない
  • ファイル大量に入ってるフォルダをバックアップ対象から外す
  • ファイル大量に入ってるフォルダの名前を短い名前に変える
  • 大量のファイルは短いパスに置く

# 運用でカバーだ

対策できたら
  • bzfileids.datを小さく出来たら全データアップロードし直す必要があるよ
  • 今までに保存済みのデータは全消しが要るよ
  • でもファイル増えてきたらまた止まるよ

# そのまま再開してくれ


大体200万ファイル(2TB弱)で限界を迎えました。
原因はBMSファイル群で、1曲毎に数百ファイルを要するためかなり数がかさんでいて合計で147万ファイルありました。これを外しさえすればファイル数は相当減るの再度使えるようになるはず。

ある程度の制約は仕方ないとはいえ、全部上げ直しはなんとかならなかったんだろうか…
なお速度の関係で大体月500GB弱程度しかアップロード出来ないので数ヶ月かかります。


色々と不満が残るものの、オンラインストレージとしては実際安いので解約せず一応このまま使うつもりですが、一度この状態になると悲惨なので注意が必要です。

ScanSnap自炊漫画のやっつけ全自動リネーム(ISBNTitlerが更新されるまでのつなぎ)

更新期待してます

ISBNTitlerAmazonの仕様変更で使えなくなったまま更新されず、リネームが非常にめんどくさかったので仕方ないので素人なりに適当に間に合わせることにしました。

自力リネームバッチ

ScanSnapのアプリ選択画面で以下のbatを作成して登録。
パスは決め打ちなので適当に置き換え要です。

やってること

  • ファイルが一定数なければ終了(表紙スキャンと同プロファイルで実施するため)
  • 現在時刻で一時フォルダを作成しjpgを移動
  • 不要ページを削除(002.jpg:カバー裏の白紙 / 004.jpg:裏表紙裏の白紙)
  • カバー(001ページ目)を回転
  • ISBNのテキスト出力(ブクログ一括登録用)
  • Amazonから商品ページ拾ってくる
  • タイトルを適当に整形してリネーム

スキャンしたjpgをフォルダに格納し、
フォルダ名を「[著者名] タイトル」に自動でリネームします。

@echo off
set PATH=%PATH%;C:\Program Files (x86)\Gow\bin


set WORKDIR=D:\Books\_New_Comic

set time2=%time: =0%
set DIRNAME=_temp_%time2:~0,2%%time2:~3,2%%time2:~6,2%

if not exist %WORKDIR%\005.jpg exit

cd "%WORKDIR%"
mkdir "%DIRNAME%"

rem カバーの裏
del 002.jpg

rem 表紙の裏(見開き調整)
del 004.jpg

move *.jpg "%DIRNAME%\"

rem "
rem 表紙回転
D:\Program_Files\IrfanView\i_view32.exe %WORKDIR%\%DIRNAME%\001.jpg /rotate_r /convert=%WORKDIR%\%DIRNAME%\001.jpg


rem バーコードからISBN取得
D:\Program_Files\ZBar\bin\zbarimg.exe -q %DIRNAME%\001.jpg > tmp.txt
for /f "usebackq tokens=*" %%i in (`findstr :978 tmp.txt`) do @set RESULT=%%i
echo %RESULT:EAN-13:=% >> ISBN.txt
SET ISBN13=%RESULT:EAN-13:978=%
del tmp.txt


rem isbn13にそのまま移動する阪
rem move %DIRNAME% %RESULT:EAN-13:=%

rem Amazonからタイトル取得
set /a DIGIT=11 - (%ISBN13:~0,1% * 10  + %ISBN13:~1,1% * 9  + %ISBN13:~2,1% * 8  + %ISBN13:~3,1% * 7  + %ISBN13:~4,1% * 6 + %ISBN13:~5,1% * 5 + %ISBN13:~6,1% * 4 + %ISBN13:~7,1% * 3 + %ISBN13:~8,1% * 2) %% 11
if %DIGIT%==10 set DIGIT=X
if %DIGIT%==11 set DIGIT=0

set ISBN10=%ISBN13:~0,9%%DIGIT%

wget http://www.amazon.co.jp/dp/%ISBN10%

grep "<title>" %ISBN10% ^
 | sed -e "s/<title>Amazon.co.jp: \(.*\): \(.*\):\(.*\)<\/title>/[\2] \1/g" ^
 | sed -e "s/\\/¥/g" ^
 | sed -e "s/\////g" ^
 | sed -e "s/:/:/g" ^
 | sed -e "s/,/,/g" ^
 | sed -e "s/;/;/g" ^
 | sed -e "s/\*/*/g" ^
 | sed -e "s/\?/?/g" ^
 | sed -e "s/</</g" ^
 | sed -e "s/>/>/g"  > tmp.txt

set /p TITLE=<tmp.txt
del tmp.txt
del %ISBN10%

echo %TITLE%

move "%DIRNAME%" "%TITLE%"

最初はこんな細かいことするつもりじゃなかったbatにつぎはぎしてった関係で所々無理してる感がすごいですが一応動きます。