|
// 「今すぐ読める!無料まんが・本一覧 」 |
|
//https://ebookjapan.yahoo.co.jp/free/books/ |
|
|
|
// 0円と表示がされている本をカートに追加後次ページへ遷移 |
|
Array.prototype.forEach.call(Array.prototype.filter.call(document.querySelectorAll(".price"),function(item){return item.firstChild.innerText==="0";}),function(item){let btn=item.closest(".item-container__item").querySelector('.btn');if(btn.attributes["goodstype"]?.value==="1"){btn.click();}});document.querySelector(".pagination__next").click(); |
|
// ↑を12秒間隔で8回繰り返し。 |
|
var count=8;var interval=12000;var id=0;var i=0;var f=function(){Array.prototype.forEach.call(Array.prototype.filter.call(document.querySelectorAll(".price"),function(item){return item.firstChild.innerText==="0";}),function(item){let btn=item.closest(".item-container__item").querySelector('.btn');if(btn.attributes["goodstype"]?.value==="1"){btn.click();}});document.querySelector(".pagination__next").click();i++;console.log(i);if(i===count){clearInterval(id);document.querySelector("a[href='/cart/']").click();}};f();id=setInterval(f,interval); |
|
|
|
//画面全体をカートに追加。無料表示でも有料の場合があるので注意。 |
|
document.querySelectorAll(".btn[goodstype='1']").forEach(a=>a.click());document.querySelector(".pagination__next").click(); |
|
// ↑を12秒間隔で8回繰り返し。 |
|
var count=8;var interval=12000;var id=0;var i=0;var f=function(){document.querySelectorAll(".btn[goodstype='1']").forEach(a=>a.click());document.querySelector(".pagination__next").click();i++;console.log(i);if(i===count){clearInterval(id);document.querySelector("a[href='/cart/']").click();}};f();id=setInterval(f,interval); |
|
// 繰り返し実行中に止めたい時。 |
|
clearInterval(id); |
|
|
|
//購入 |
|
//https://qiita.com/asa-taka/items/888bc5a1d7f30ee7eda2 |
|
(async ()=>{for(let i=0;i<10;i++){document.querySelector(".btn.btn--primary").click();await (msec => new Promise(resolve => setTimeout(resolve, msec)))(6000);if(location.href==="https://ebookjapan.yahoo.co.jp/cart/complete/")window.close();}}).call(); |
|
//2021/06/10時点で水曜日に「200円以下5巻以上発行第1巻200円引き」クーポンが配布される。 |
|
//このクーポンは使用回数に制限がない。なので200円以下の本ならいくらでも入手できる。要らない本ばっかだけど。 |
|
//(1)で検索すると第一巻がヒットしやすいのでお勧め。「1巻」とか「1」で良いかも。 |
|
//まともなのが欲しいなら割引フィルターを付けた方が良い。 |
|
//あと決済手段は登録しておかない方が安全。 |
|
//終了後カートに移動。 |
|
(async ()=>{let sleep=(msec => new Promise(resolve => setTimeout(resolve, msec)));for(let i=0;i<10;i++){document.querySelector(".btn.btn--primary").click();await sleep(6000);if(location.href==="https://ebookjapan.yahoo.co.jp/cart/complete/"){await sleep(5000);location.href="https://ebookjapan.yahoo.co.jp/cart/";}}}).call(); |
|
|
|
//200円より高い本はカートから削除。200円以内の場合新しいタブで開く。 |
|
(async ()=>{let max=6;let cnt=0;let sleep=(msec => new Promise(resolve => setTimeout(resolve, msec)));let more=document.querySelector(".contents-more>span");if(more.innerText==="開く"){more.click();}await sleep(500);Array.prototype.forEach.call(document.querySelectorAll(".coupon-badge"),(item)=>{if(cnt>=max)return;let atag=item.closest("a");if(atag===null)return;if(parseInt(atag.querySelector(".price>b").innerHTML.replace(",",""))<=200){cnt++;window.open(atag.href);}item.closest("div.book-item").querySelector(".book-item__actions").childNodes[1].click();});}).call(); |
|
|
|
//無料本から無料購入できそうな本を開く。 |
|
//絞り切りが甘いので現状使えない。 |
|
Array.prototype.forEach.call(document.querySelectorAll(".tagtxt"),(item)=>{ |
|
if(item.innerHTML!=="無料")return; |
|
var li=item.closest("li.item-container__item"); |
|
var title=li.querySelector(".book-item__title").innerText; |
|
if(title.indexOf('1')==-1)return; |
|
var alink=li.querySelector("a"); |
|
if(alink===null)return; |
|
window.open(alink.href); |
|
}); |
ラムダ式を使ってたり使ってなかったりは気分です。