diff --git a/tokimonkeyDownader.js b/tokimonkeyDownader.js
index 6160408..215c861 100644
--- a/tokimonkeyDownader.js
+++ b/tokimonkeyDownader.js
@@ -74,6 +74,7 @@
const QUEUE_KEY = 'sbxh6_q';
const IDX_KEY = 'sbxh6_i';
const SERIES_KEY = 'sbxh6_s';
+ const LIST_KEY = 'sbxh6_list';
const getQueue = () => {
try { return JSON.parse(sessionStorage.getItem(QUEUE_KEY) || 'null'); } catch (_) { return null; }
@@ -85,6 +86,7 @@
sessionStorage.removeItem(QUEUE_KEY);
sessionStorage.removeItem(IDX_KEY);
sessionStorage.removeItem(SERIES_KEY);
+ sessionStorage.removeItem(LIST_KEY);
};
function generateComicInfo(title, series, writer, number, pageCount, imageCount = 0) {
@@ -210,14 +212,14 @@ ${pagesXml ? ` \n${pagesXml} \n` : ''}
stuckCount = 0;
}
prevHeight = maxScroll;
- // 현재 위치에서 끝까지 step 단위로 스크롤
- const step = Math.min(500, maxScroll);
+ // 현재 위치에서 끝까지 step 단위로 스크롤 (느리게)
+ const step = Math.min(300, maxScroll);
for (let s = window.scrollY; s <= maxScroll; s += step) {
window.scrollTo(0, Math.min(s, maxScroll));
- await sleep(80);
+ await sleep(300);
}
window.scrollTo(0, maxScroll);
- await sleep(1000);
+ await sleep(1500);
}
// 끝까지 다 내려간 상태에서 여유 대기
await sleep(2000);
@@ -333,6 +335,7 @@ ${pagesXml ? ` \n${pagesXml} \n` : ''}
sessionStorage.setItem(QUEUE_KEY, JSON.stringify(episodes));
sessionStorage.setItem(SERIES_KEY, seriesName);
sessionStorage.setItem(IDX_KEY, '0');
+ sessionStorage.setItem(LIST_KEY, window.location.href);
window.location.href = episodes[0].url;
}
@@ -347,7 +350,7 @@ ${pagesXml ? ` \n${pagesXml} \n` : ''}
if (idx >= queue.length) { cleanupQueue(); return; }
log(`자동 다운로드: ${idx + 1}/${queue.length} - ${queue[idx].title}`);
- await sleep(2000);
+ await sleep(7000);
try {
const imageUrls = await getImagesWithLazyLoad();
@@ -370,8 +373,14 @@ ${pagesXml ? ` \n${pagesXml} \n` : ''}
await sleep(2000);
window.location.href = queue[next].url;
} else {
+ const listUrl = sessionStorage.getItem(LIST_KEY);
cleanupQueue();
log('모든 에피소드 다운로드 완료!');
+ if (listUrl) {
+ log('목록 페이지로 복귀합니다...');
+ await sleep(2000);
+ window.location.href = listUrl;
+ }
}
};