Posts Tagged ‘Amazon’
JavaScriptでAmazonからASINを取得する方法など
一つの方法はinput要素から取得する方法
document.getElementById("ASIN").valueAmazonはページ中のhiddenなinput要素にASINを持たせてるのでこういう手が取れる。
<input id="ASIN" type="hidden" value="4253196519" name="ASIN">
ページの構造が変わったらダメだけど、結構昔からこの部分は変わってないので意外と安定しているかもしれない。
amazon.comだと構造が違うものがあって、Amazon.com: Buried Prey eBook: John Sandford: Kindle StoreのようにKindle Storeだとページ構造が違ってID=ASINがない代わりに次のようなものがある。
<input type="hidden" value="B004LRPGPC" name="ASIN.0">
var ASIN = document.getElementById("ASIN") || document.getElementsByName("ASIN.0")[0];
もう一つの方法はwindowオブジェクトのプロパティから取得する方法
(2011年6月5日現在だと)
window.sitbAsin;
これはAmazon側のJavaScriptが生やしているので、ページのちょっとした構造の変化では変わらないと思うけど使うライブラリを変えたりJavaScriptが大きく変わると変更されることがある。
以前はwindow.productTagsに入っていた。
最後はURLからASIN部分を切り出す方法
URLにはASINが入ってるはずなので、ページに構造の変化には強いけど、少しパースが面倒なところがある。
どのようなURLがあるかを把握する必要があるので、条件分けなども必要になる。
まあASINのフォーマットは\w{10}と決まっているので、ある程度安定するのかもしれない。
ついでに、replaceStateを使ってリロードなしでAmazonのURLを/dp/ASINだけの短いURLにするGreasemonkey書いた。
オライリージャパンのebook(PDF)でコピペする、ファイル名のリネームをする方法
O’Reilly(Japanも)が全ての電子書籍を半額で&売上を日本赤十字社に寄付 | JSer.infoでオライリージャパンも半額電子書籍を販売していたので、オライリージャパンのpdfにはDRMなどの制限があることを知らないで購入した人もいるかもしれません。
販売されるEbookは、印刷、テキストのコピー、ページの抽出、内容の変更を行うことができません。決済時に入力いただいたご購入者のメールアドレスが挿入されます
英語が読めない人向け、英語技術書の読み方でも言っていましたが、印刷はまだしもコピペができないのは電子書籍として致命的なので、そのDRMの回避方法と、オライリージャパンからダウンロードしたpdfは<16進数の羅列>-<書籍のISBN>.pdfという扱いにくいファイル名なのでそれを手軽にリネームする方法の紹介です。
pdfファイルのリネーム
まずはpdfファイルのリネームです。
オライリー公式でも扱いにくいと言ってて、ISBNからJSONで書籍情報を取得できるAPIを提供しています。
これを使ったリネームスクリプト(Python)がJSON形式による書誌情報の提供をはじめました – O’Reilly Japan Community Blogで公開されているので、これを使うのも良いでしょう。
もうひとつは電子書籍ソフト関係で有名な>>722さんがISBN TitlerというISBNなどからAmazonで検索してファイルのリネームをするソフトウェアを公開しています。使い方は単純で、PDFをソフトウェアにD&Dするだけでリネームをしてくれます。(iTextSharpを使えばpdfのプロパティも書き込んでくれるらしいですが、オライリーのpdfだとDRMの影響かもしれませんがうまくいきませんでした。)
設定からリネームの書式設定や置換の設定などもできるので、自由がきくリネームソフトになっています。
DRMについて
追記: オライリージャパンの電子書籍もDRMフリーになるそうです。
O’Reilly Village/オラの村 – オライリー・ジャパンのEbookがDRM Freeになります
先ほど述べたようにオライリージャパンには印刷、テキストのコピー、ページの抽出、内容の変更ができないなどの制限やメールアドレスをウォーターマーク的に埋め込み(遅延の原因っぽい)があります。
O’Reilly Mediaにはこの制限はありませんし、PDF以外にもepubなどでダウンロードできますし、アップデートも保証してくれます。
なぜ本家ではそのようなDRMを付けてないかはSteal This E-Book – Forbes.com(訳 fladdict » 電子書籍を盗め!)を読むといいです。
このオライリージャパンにある制限はPDF-XChange ViewerというPDFビューアーを利用する事で外すことができます。
ファイルメニュー>ドキュメントのプロパティ>セキュリティタブ で”セキュリティの設定”を”なし”にしてからpdfファイルを保存するとコピーなどの制限がなくなります。(メールアドレスのウォーターマークは消えないけど)
これで書籍の外観を乱すウォーターマーク以外は通常の電子書籍としてオライリー本を読むことが可能になりました。
(多分、セキュリティ変更に対するパスワードがかかってないためAcrobatなどの他のソフトでもセキュリティ設定の変更を行う事ができると思います)
何でこんな記事を書いたかというと、コピペも印刷もできないというDRMがかかってるのはさすがに電子書籍として論外だと思ったからだ。
コピペができないとその場でコードを実行して確かめにくい(サンプルコードをわざわざ見に行くのかい?)と思うし、検索も行いくくなって電子書籍である利点がなくなってしまっていると思う。また、PC(電子書籍端末)じゃ読みにくいから印刷する、大事な部分は印刷して読みたいという需要が存在してるはずだ。そうしたDRMを設定することにどこまで意味があるのかもやや疑問的でもあり、オライリージャパンの立場的にそうしたものを付けないと物事がスムーズに進まないと言った事情もあるのでしょうが、やはりコンテンツの価値を下げてしまってるこのDRMは不要だと思う。
また、オライリージャパンのpdfには各ページの末尾に購入したメールアドレスが埋め込まれるというソーシャルDRM的なものが存在している。
これも、末尾に毎回あるだけでも外観を乱しているのに、PDFリーダーがメールアドレスをリンク(設定で変えられるが)して余計気が散ったりして電子書籍を読みにくくしている。ソーシャルDRMは不正コピーに効果的かもしれないが、これが嫌で購入を避ける人もいるだろう。
この記事を出すかは少し迷ったが、いつまでもこのままでは不便きわまりないため書くことにした。
これを書くのに他の国ではどうなっているのかも少し調べてて、オライリーにはUS(UK) 、 ドイツ 、 日本 、 中国、台湾とあり、中国、台湾はオライリーショップがない?(他のショッピングサイトを経由してた)
ドイツは http://www.oreilly.de/ebooks/faqs.htmlにebookのDRMについて記述されているがドイツ語が読めなかったのでよく分からなかった(pdfとepubで販売してて、ウォーターマークありで印刷はできてcut&pasteはできないって読めたけど確証はない、cut&pasteと言うのがよく分からないし、コピペはできるけど加工はできないという意味なのかな?)
本家であるUS(UK)はご存じの通り、マルチフォーマットでDRMなしで、日本の12時間以内にダウンロードしないと無効になるなんて事はなく、書籍のアップデートも保証されている。(後、ラフカット版やsafari onlineの存在は大きい)
もしドイツもDRMがあるようなら翻訳関係でDRMが付けられているのかもしれないが、先の震災により電子書籍を扱うところが増えて動きが活発になってきているこのご時世に、何かオライリージャパンとしての動きがあることを願っています。
参考
- オライリーのebookが今日いっぱい「半額」(ただし入手まで数十時間待ち) – ただのにっき(2011-03-25)
- オライリー・ジャパンの被災者支援キャンペーンとティム・オライリーが語る「オライリーメディアがDRMを使わない理由」 – YAMDAS現更新履歴
使用したソフトウェア
- PDF-XChange
- http://www.tracker-software.com/
「RefControl」でリファラを偽装しておくべきサイト
RefControlというアドオンを使う事でURL毎に、リファラを阻止や偽装することができます。
偽装までしなくても阻止すれば問題ないサイトも多いです。
このアドオンを使ってリファラを阻止、偽装しておくべきサイトのメモ
URLのリストはインポートできるので、インポートするのが一番楽です。

- refcontrol.txt をインポート
RSSリーダから画像を表示するためにリファラを偽装、阻止するサイト
- blogs.yahoo.co.jp
- fc2.com
- image.itmedia.co.jp
- plusd.itmedia.co.jp
AmazonはGoogleからのリファラを見て、商品説明の上部に検索結果を表示するようになったためリファラを偽装しています。
- www.amazon.co.jp
Amazonの商品ページに読書メーターorゲームメーターの感想を表示するGreasemonkey
2009/03/23
ゲームメーターにも対応しました。
前のバージョンは削除してください。
amazon_cross_meterはAmazonの商品ページ(ASINがある)にて、その商品について読書メーターかゲームメーターで書かれている感想をその場で表示するGreasemonkeyです。
イメージが伝わりづらいのでこんな感じになります。
設定したサイトの商品毎のページからコメントだけを抜き出して表示しています。
ボタンで表示を非表示に切り替えられるので、デフォルト表示/非表示を変えることもできる。
表示位置も変えられるので、自分の好きな位置に表示してください。
編集する時はステータスバーの猿アイコンからamazon_cross_meterを右クリックから編集してください。
以下のページからインストール
- amazon_cross_meter
- http://userscripts.org/scripts/show/44773
- 読書メーター – あなたの読書量をグラフで管理
- http://book.akahoshitakuya.com/
- ゲームメーター – あなたのゲームを管理・共有
- http://gamemeter.net/
amazonのほしいものリストで本名や履歴がだだ漏れ
amzonのウィッシュリスト(前はほしい物リストという名前)という機能が、今話題に上がってるので何が危ないかと言うことと対策方法。
この機能は公開している人に対して名前またはEメールアドレスなどで検索ができるため、サイトのEメールアドレスなどを入れれば、ウィッシュリストの中身(登録している名前や履歴など)が見れてしまう。
対策方法(ほしい物リストを作ってない人は関係ないのかな)
これの恐ろしいところはデフォルトが公開の設定になっているところなので、非公開にすれば検索対象にはなりません。
ほしい物リスト を開き、「設定内容を変更する」リンクをクリックして設定画面に行き、ほしい物リストの公開/非公開の項目で「特定の人に公開する」(Eメールを送信した人にのみ公開)か、または「公開しない」にチェックを入れて保存すれば検索対象からは外れる。
アドレスや住所なども書かない方がいいと思う。
上記の方法だけで、今回の件については大丈夫だと思います。
本名などが知られたくない人は、アカウントの登録内容の変更から名前を変更すればいいと思います。
自分はamazonを利用しないので特に何ともなかったのですが、
amazonから本名がばれてしまう件 – むぎメモによると、かなり前から同様の事ができたようです。
CSRFもできてしまうのでこれが事実かどうかを調べる前に、ログアウトをしてから調べるようにしといた方がいいと思います。
ログアウト方法は、サイトインしてくださいと言うリンクを踏めばいいみたいです。(なんとややこしい。)






