Chromeでポイント利用情報のページを開く
ページ下部の「もっと見る」ボタンを繰り返し押してすべての履歴をページ上に表示させる。
ページのどこでもいいので右クリックしてメニューの「検証」をクリックする。
DevToolsというウィンドウが表示される。Consoleタブをクリックする。
ページ下部に「もっと見る」のボタンがある場合は、下のコードをコピーしてDevToolsに貼り付けてEnterを押す。ない場合はここはスキップ
すべての履歴が表示するとアラートが表示される。人によっては時間かかると思う
let interval = setInterval(() => {
$more = $(".box-more");
if ($more.css("display") == "block") {
$more.find("a").trigger("click");
} else {
alert("すべての履歴を表示しました")
clearInterval(interval);
}
}, 1000);
すべての履歴がページ上に表示されたら、下のコードをコピーしてDevToolsに貼り付けてEnterを押す。
let arr = [];
$.each($(".box-list tr"), function (a, b) {
const $tr = $(b);
const $tds = $tr.find("td");
if ($tds.length === 0) return;
const date = $tds.eq(0).text();
const title = $tds.eq(1).text();
const total = $tds
.find(".grand-total")
.text()
.trim()
.replace(/[\,\+pt]+/g, "");
const point = $tds.eq(3).text().trim().replace(/\s+/g, " ");
const root = $tds.eq(4).text().trim().replace(/\s+/g, " ");
arr.push([date, title, total, point, root].join(","));
});
let csv = arr.join("\n");
copy(csv)
クリップボードにCSVがコピーされているのでExcelなりスプレッドシートで集計する。