経緯
2014年一年間で読んだ本の情報をまとめようと思った。とりあえずAmazonから一年分の購入履歴を取得したい。
そういえば去年、Amazonの購入履歴の合計金額を取得するブックマークレットが流行ってたことを思い出した。
そうだ、あれを参考にさせてもらおう。
( ^ω^)
とりあえず上記サイトのブックマークレットを実行!
...あれ、動かない。
デバッガで調べてみたところ、どうやら現在Amazon側の仕様が変わっていて利用できなくなっている。
更に探してみたところ、Amazonの新しい仕様に沿った修正版をgistで発見。
こちらのコードからforkして、商品情報を取得する実装を追加した。
(またそのうちamazonの仕様変更で使えなくなるかもしれないが。)
成果物
入力
集計したい年を入力。
出力
合計金額
集計が終わった後、ダイアログで合計金額を出力。
商品情報
合計金額のダイアログを閉じると、ポップアップで商品情報を表示する。
タブ区切りで下記のようなフォーマットにて出力した。
[日付] [商品名] [販売元] [URL]
本当は個々の商品の金額も出したかったが断念。
複数商品同時注文については、注文履歴ページに商品ごとの金額の記載がなく取得ができなかった。
出力例は以下。
2014/12/19 パターン認識と機械学習 上 C.M. ビショップ https://www.amazon.co.jp/gp/product/4621061224/ref=oh_aui_detailpage_o01_s00?ie=UTF8&psc=1
2014/12/19 パターン認識と機械学習 下 C.M. ビショップ https://www.amazon.co.jp/gp/product/4621061240/ref=oh_aui_detailpage_o01_s00?ie=UTF8&psc=1
ソースコード
ソースコードはgistで公開。
https://gist.github.com/koyopro/a480a45712ccf1bf239c
ブックマークレット
ブックマークレットとして使えるようにもしてみた。
上記gistのコードをminifyし、さらにHTMLエスケープしたもの。
リンク先ページのコードをブラウザのアドレスバーにコピペして実行できる。
(コピペ時に先頭の"javascript:"が消える場合は保管してやる)
Amazonの注文履歴ページ( https://www.amazon.co.jp/gp/css/order-history/ )で利用可能。
本当は外部にjsファイルを置いて実行させたいのだが…。
Chromeだとhttpで取得したjsがhttpsのページ内では実行できず一旦保留に。
参考
いままでいくらAmazonで買い物したか合計するブックマークレット書いた - モロ屋
http://moroya.hatenablog.jp/entry/2013/06/03/225935
Amazonの注文履歴をCSV形式にして出力するスクリプト
https://gist.github.com/arcatdmz/8500521
Amazon で使った金額の合計を出す奴 (2014 年バージョン)
https://gist.github.com/polamjag/866a8af775c44b3c1a6d