|
2026-05-20 16:25
조회: 162
추천: 0
현재 보고있는 페이지의 글 일괄 삭제하기![]() 각 게시판에 들어간 후 내 글을 클릭한 기준으로 작성되었습니다. 게시판 > 내글 클릭 후 내가 작성한 글 보는 화면에서 F12 입력. Console 클릭 후 아래 글 복붙하기============================================================= (async function(){function sleep(ms){return new Promise(function(resolve){setTimeout(resolve,ms);});}function getBoardId(){var parts=location.pathname.split("/");for(var i=0;i<parts.length;i++){if(parts[i]==="board"&&parts[i+2]){return parts[i+2];}}return null;}function isNumberText(value){return value!==""&&!isNaN(Number(value));}function getCurrentPage(){var params=new URLSearchParams(location.search);var page=params.get("p");if(page){return page;}var active=document.querySelector(".paging .on, .paging .active, .pagination .active, .page .on");if(active){var activeText=active.textContent.trim();if(isNumberText(activeText)){return activeText;}}var els=document.querySelectorAll("a, span, strong");for(var i=0;i<els.length;i++){var text=els[i].textContent.trim();var className=els[i].className||"";if(isNumberText(text)&&(className.indexOf("on")>-1||className.indexOf("active")>-1||els[i].tagName.toLowerCase()==="strong")){return text;}}return "1";}var COME_IDX=getBoardId();var PAGE=getCurrentPage();var NL=String.fromCharCode(10);if(!COME_IDX){alert("게시판 번호를 자동으로 찾지 못했습니다.");return;}window.__stopInvenDelete=false;async function removePost(postId){var formData=new FormData();formData.append("come_idx",COME_IDX);formData.append("p",PAGE);formData.append("l",postId);formData.append("my","post");var response=await fetch("https://www.inven.co.kr/board/bbs/include/multi_delete.php",{method:"POST",body:formData,credentials:"include",cache:"no-store",headers:{"X-Requested-With":"XMLHttpRequest"}});var resultText=await response.text().catch(function(){return "";});console.log("[DELETE RESULT]",{postId:postId,status:response.status,response:resultText.slice(0,200)});return response.ok;}var spans=document.querySelectorAll("td.num span");var postIds=[];for(var i=0;i<spans.length;i++){var value=spans[i].textContent.trim();if(value){postIds.push(value);}}console.log("[INFO] come_idx:",COME_IDX);console.log("[INFO] 현재 페이지:",PAGE);console.log("[INFO] 삭제 대상:",postIds);if(postIds.length===0){alert("삭제할 글 번호를 찾지 못했습니다.");return;}var successCount=0;var failCount=0;var failedPostIds=[];for(var j=0;j<postIds.length;j++){var postId=postIds[j];if(window.__stopInvenDelete){console.log("[STOP] 사용자가 중지했습니다.");break;}try{console.log("[DELETE] "+(successCount+failCount+1)+"/"+postIds.length+":",postId);var result=await removePost(postId);if(result){successCount++;}else{failCount++;failedPostIds.push(postId);}await sleep(300);}catch(error){failCount++;failedPostIds.push(postId);console.error("[ERROR]",postId,error);}}if(failCount>0){alert("삭제가 완료되었습니다."+NL+"성공: "+successCount+"개"+NL+"실패: "+failCount+"개"+NL+"전체: "+postIds.length+"개"+NL+NL+"실패한 글 번호: "+failedPostIds.join(", "));}else{alert("삭제가 완료되었습니다."+NL+"삭제된 글 개수: "+successCount+"개");}location.reload();})(); ============================================================= 정상 작동이 끝난 후 해당 팝업이 표시됩니다. ![]() ai를 활용하여 작성한 게시글입니다. 26년5월20일 기준 작성된 글이며 시간이 지난 후 사용 시 정상 작동하지 않을 수 있습니당 + 인벤에 코드 작성 시 코드가 깨지는 문제가 있어 복붙용 텍스트 버전으로 수정하였습니다.
|
메이플스토리 인벤 자유 게시판 게시판
인벤 전광판
메이플스토리 인벤에 오신 것을 환영합니다~★

Console 클릭 후 아래 글 복붙하기
