LoginSignup
3
4

More than 5 years have passed since last update.

今まで楽天で買い物した総額を算出する

Posted at

Amazonのそれが再度熱を帯びているので、楽天市場の方も。

参考にしたサイト
http://blog.kantan-life.com/article/412662083.html

このサイトに記載しているコードでも充分に動くが、肝心の総額は計算されない。またChromeだと動作しない。
そこで、このサイトに掲載されているコードを改良し、ブックマークレット化した。
ブックマークレット化には「Closure Compiler」を用いている。
http://closure-compiler.appspot.com/home

ブックマークレット
javascript:(function(){function c(a){a="number"!==typeof a?0:a;if(0===a&&($("<div/>").css({position:"fixed",left:0,top:0,width:"100%",height:"100%",zIndex:1E3,backgroundColor:"rgba(0,0,0,.7)",color:"#fff",fontSize:30,textAlign:"center",paddingTop:"15em"}).attr("id","___overlay").text("\u697d\u5929\u5e02\u5834\u3044\u304f\u3089\u4f7f\u3063\u305f\uff1f").appendTo("body"),e=2012,!/^[0-9]+$/.test(e)))return alert("\u6b63\u3057\u3044\u6570\u5024\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044"),$("#___overlay").remove(),
!1;var b=h(a+1);$("#___overlay").text("\u96c6\u8a08\u4e2d\u2026  / "+(a+1)+"\u30da\u30fc\u30b8\u76ee");b.done(function(k){f+=k;c(a+1)}).fail(function(){for(var a=alert,b=(new String(f)).replace(/,/g,"");b!=(b=b.replace(/^(-?\d+)(\d{3})/,"$1,$2")););a("\u3042\u306a\u305f\u306f\u5408\u8a08"+b+"\u5186\u5206\u306e\u8cb7\u3044\u7269\u3092\u697d\u5929\u5e02\u5834\u3067\u3057\u307e\u3057\u305f\uff01");$("#___overlay").remove()})}function h(a){var b=$.Deferred();l(a).done(function(a){a=$.parseHTML(a);var c=
0;$(a).find(".price").each(function(){var a=$(this).text().match(/[0-9]/g),b=0;null!=a&&(b=Number(a.join("")));c+=b});0===c?b.reject():b.resolve(c)});return b.promise()}function l(a){var b=$.Deferred();$.ajax({url:"https://order.my.rakuten.co.jp/?page=myorder&fidomy=1&display_month=0&search_item=&page_num="+a+"&search_sender=&search_shop=",success:function(a){b.resolve(a)}});return b.promise()}var f=0,e="2012";if("function"!==typeof $){var g=document,d=g.createElement("script");d.src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js";
d.onload=c;g.body.appendChild(d)}else c()})();

あとは楽天の購入履歴のサイトへ移動し、
https://order.my.rakuten.co.jp
上記ブックマークレットをURL欄にペースト、頭にjavascript:を追加して実行するだけで計算される。
ちなみに私は300万弱と計算された。怖い。

Amazonの方もそうだが、案外この手のものは既存のものを少し改良(クラス名を変更するだけなど)することにより、様々なものを計算することが出来る。
いろんなサイト向けのものを作ってみよう。

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4