Amazonの利用金額を調べる技があるらしいので、調べてみた!

2015/4/22 09:32
ama

(15/4/22)追記:2015年版仕様のコードに書き換え
(14/1/22追記:Amazonギフトカード使用等、購入金額が合計0円のページがあると、そこで計算が終了する模様)

まずはAmzon.co.jpの注文履歴へ!


amazon1

Amazon.co.jp - TOP

まずは上記のリンクからAmazon.co.jpのウェブサイトへと飛び、次に注文履歴を開きます。

amazon

アドレスバーへ、コードを打ち込む


amazon3

以下のコードをアドレスバーへと貼り付けます。
(Chrome, Operaでは先頭の「javascript:」が勝手に消えてしまうので手打ちし直す必要があります)

(function(){var datePattern=new RegExp("(\\d{4})年(\\d{1,2})月(\\d{1,2})日");function formatEntry(entry){console.log(entry);entry.date.match(datePattern);var year=RegExp.$1;var month=RegExp.$2;if(month.length<=1) month="0"+month;var day=RegExp.$3;if(day.length<=1) day="0"+day;var date=""+year+"/"+month+"/"+day;var arr=[date,entry.name,entry.author,entry.url];return arr.join('\t')+"\n";}function popup(content){var generator=window.open('','name','height=250,width=700');generator.document.write('Amazon to TSV');generator.document.write('');generator.document.write('
');generator.document.write(content);generator.document.write('
');generator.document.write('');generator.document.close();return generator;}var itemDelimiter="/";var total={};var year='2014';var all=false;function init(num){if(typeof num !=='number'){var num=0;$('
').css({position:'fixed',left:0,top:0,width:'100%',height:'100%',zIndex:1000,backgroundColor:'rgba(0,0,0,.7)',color:'#fff',fontSize:30,textAlign:'center',paddingTop:'15em'}).attr('id','___overlay').text('Amazonいくら使った?').appendTo('body');year=window.prompt('何年分の注文を集計しますか?\n - 半角数字4桁で入力してください\n - 全期間を集計する場合は「all」と入力します',year);if(year==='all'){all=true;year=jQuery('div.top-controls select option:last').val().match(/[0-9]/g).join('');}else if(!/^[0-9]{4}$/.test(year)){alert('正しい数値を入力してください');$('#___overlay').remove();return false;}year=Number(year);}var progress=load(num,false);$('#___overlay').text(year+'年の集計中…/'+(num+1)+'ページ目');progress.done(function(results){if(typeof total[year]==='undefined'){total[year]=results;}else{total[year]=total[year].concat(results);}init(num+1);}).fail(function(){if(all && new Date().getFullYear()>year){year++;init(0);}else{var _total=0;var _content="";jQuery.each(total,function(year,results){var yen=0;jQuery.each(results,function(){yen+=this.price;$.each(this.items,function(i,item){_content+=formatEntry(item);});});_total+=yen;});$('#___overlay').remove();alert('合計 '+_total+' 円');popup(_content);console.log('合計 '+_total+' 円');}});}function load(num,verbose){var df=jQuery.Deferred();var page=get(num,verbose);page.done(function(data){var dom=jQuery.parseHTML(data);var results=[];jQuery(dom).find('div.order').each(function(){var box=jQuery(this);var dateText=jQuery(box.find('div.order-info span.value')[0]).text().trim();var items=[];var pubarr=box.find("div.a-row>span.a-size-small");box.find("div.a-row>a.a-link-normal").each(function(j){var item={};item.name=$(this).text().trim();item.path=$(this).attr('href').trim();item.url='https://www.amazon.co.jp'+item.path;item.date=dateText;item.author=$(pubarr[j*2]).text().trim().replace(/(\n)/g,'');items.push(item);});var priceText=jQuery(box.find('div.order-info span.value')[1]).text();var price=Number(priceText.match(/[0-9]/g).join(''));if(verbose) console.log(item,price);results.push({'date':dateText,'items':items,'price':price});});if(results.length<=0) df.reject();else df.resolve(results);});return df.promise();}function get(num){var df=jQuery.Deferred();jQuery.ajax({url:'https://www.amazon.co.jp/gp/css/order-history?digitalOrders=1&unifiedOrders=1&orderFilter=year-'+year+'&startIndex='+num*10,beforeSend:function(xhr){xhr.setRequestHeader('X-Requested-With',{toString:function(){return '';}});},}).success(function(data){df.resolve(data);}).fail(function(jqXHR,msg){if(verbose) console.log("fail",msg);});return df.promise();}if(typeof jQuery !=='function'){var d=document;var s=d.createElement('script');s.src='//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js';s.onload=init;d.body.appendChild(s);}else{init();}})();

※コード製作者: yoshida-k

アドレスバーへ、コードを打ち込む for Firefox


使用しているブラウザがFirefoxの場合、上記の方法ではプログラムを実行できません。
そこで、FirefoxでAmazonの利用金額を調べたい場合はスクラッチパッドを使用することで解決します。
(スクラッチパッドはJavascriptなどを一時的に動作確認するときなどに使用する機能)

forFirefox1

スクラッチパッドを起動するには「Shitキー + F4」を押すことで起動できます。
画像のように、そのまま上記のコードを貼り付けます。

forFirefox2

ソースコード貼り付けたら、「実行」ボタンを押すとFirefoxでもプログラムが動作するので、
以降の手順は他ブラウザの場合と同様です。

調べたい時期を入力


amazon4

何年の注文合計金額を調べたいか入力します。全てなら「all」と入力。

amazon5
集計中......

amazon6

ででーん!今回自分の2013年6月12日時点での利用金額を調べてみました。
76888円ー!何に使ったんだよ一体!!!!!

以上、こんな感じに簡単に集計が取れちゃう技でした。
良かったらみなさんの金額も教えて下さいね。

おまけ(2012年度の集計してみた)


amazonnn

388,914円
               ,, -―-、       
             /     ヽ   
       / ̄ ̄/  /i⌒ヽ、|    オエーー!!!!
      /  (゜)/   / /          
     /     ト、.,../ ,ー-、       
    =彳      \\‘゚。、` ヽ。、o   
    /          \\゚。、。、o
   /         /⌒ ヽ ヽU  o
   /         │   `ヽU ∴l
  │         │     U :l
                    |:!
                    U
ASUS 144Hz ゲーミングモニター
LX デスクマウントアーム
Connect with だもんげ!
Twitter feedly RSS
カテゴリー
最新コメント
アクセスカウンター
  • 累計: