혹시 클리앙 글 지우는 매크로도 사용조건이 있나요?
C
castle (172.♡.223.75)
2024년 4월 1일 PM 12:57 · 수정됨(03. 23. 09:20)
조회 480 공감 0
FineAsh.exe 20230327 파일을 실행헀습니다.
여러번 실행하면 한번정도 삭제를 시작하더군요.
며칠 계속 컴퓨터를 켜놓기 그래서
3일째 되는날 컴퓨터 끄고 다시 실행할려고 지금 여러번 시도중인데요.
삭제 시작이 안되는군요.
혹시 사용조건이 있을려나요?
댓글 (8)
-
슈슈니
24.04.01 · 172.♡.210.85
-
CCastle
→ 슈니 작성자
24.04.01 · 172.♡.63.124
감사합니다.
일단기다려 봐야겠군요.
아직 2만개 정도 남은거 같군요 ㅎㅎㅎ -
크크리안
24.04.01 · 162.♡.138.33
글 만 먼저 삭제하고
다음에 댓글 하나씩 해야 빨라요 -
잡잡일전문가
24.04.01 · 172.♡.122.203
브라우저에서 그냥 하시는 방법도 좋습니다.
로그인 하신 뒤에 브라우저 콘솔에 아래 코드 붙여넣고 엔터 치시믄 브라우저 닫거나 다른 페이지로 이동하지 않는 이상 주욱 지워집니다. 빨라요.
async function getData(type, page) {
if (type === 'likeArticles' || type === 'likeComments') page = 0;
const html = await $.ajax(
`https://www.clien.net/service/mypage/myArticle?&type=${type}&po=${page}`
);
const parser = new DOMParser();
const doc = parser.parseFromString(html, 'text/html');
const pagination = doc.querySelector('.board-pagination');
const nextButton = pagination.querySelector('a.board-nav-next.ten');
const lastButton = Array.from(pagination.querySelectorAll('a.board-nav-page')).pop();
const lastPageNumber = lastButton.href.replace(/.*\D(\d+).*/, '$1');
const endpoints = Array.from(
doc.querySelectorAll(".list_myArticle a.list_subject")
)
.map((element) => {
if (element.getAttribute("href") === "#") {
return getEndpoint('deletedComments', element.getAttribute("onclick").match(/(?:')(.*?)(?:')(?:,)(.*?)(?:,)(.*?)(?:\))/))
} else {
return getEndpoint(type, element.href.match(/\/service\/board\/([^\/]+)\/(\d+)(?:\?[^#]+)?(?:#(\d+))?/))
}
}).filter(Boolean);
let next = !(!nextButton && page + 1 > lastPageNumber);
if (endpoints.length === 0 && (type === 'likeArticles' || type === 'likeComments')) {
next = false
}
return {
next: next,
title: getTitle(type),
endpoints: endpoints
};
}
function getEndpoint(type,[_,boardCd,boardSn,commentSn]) {
if (!boardCd || !boardSn) return;
if (type === 'articles') return `/board/${boardCd}/delete?boardSn=${boardSn}`
else if (type === 'comments') return `/board/${boardCd}/${boardSn}/comment/delete/${commentSn}`;
else if (type === 'deletedComments') return `/board/${boardCd}/${boardSn}/my/comment/delete/${commentSn}`;
else if (type === 'likeArticles') return `/board/like/${boardCd}/${boardSn}/delete`;
else if (type === 'likeComments') return `/comment/like/${boardCd}/${boardSn}/${commentSn}`;
}
function getTitle(type) {
if (type === 'articles') return '게시글'
else if (type === 'comments') return '코멘트'
else if (type === 'likeArticles') return '게시글 공감'
else if (type === 'likeComments') return `코멘트 공감`;
}
function sendRequest(title, endpoint) {
const url = `${API_HOST}${endpoint}`;
$.ajax({
url: url,
type: "POST",
success: function (result) {
console.log(title, "삭제 성공", url);
},
error: async function (request) {
var res = JSON.parse(request.responseText);
console.error(title, "삭제 실패", url);
console.error(res);
},
});
}
function delay(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function start(type, page = 1) {
console.log(`${type} ${page} 페이지 삭제 시작`);
const data = await getData(type, page -1);
for (let endpoint of data.endpoints) {
await delay(5500)
sendRequest(data.title,endpoint)
}
await delay(3000)
if (data.next) {
await start(type, ++page);
} else {
console.log(`${data.title} 삭제가 모두 완료 되었습니다.`);
}
}
await start('articles', 1);
await start('comments');
await start('likeArticles');
await start('likeComments'); -
CCastle
→ 잡일전문가 작성자
24.04.01 · 172.♡.222.183
감사합니다.
시도해 보겠습니다. - 배
배리앨런
→ 잡일전문가
24.04.15 · 203.♡.92.163
감사합니다. 잘 됩니다 -
Ssuper튜브
→ 잡일전문가
25.03.23 · 182.♡.63.93
모공 댓글 공감 삭제가 안되서 확인해보니
게시글, 댓글이 먼저 삭제가 되면서 권한이 사라져서 안되는 것으로 보이네요.
삭제 순서를 변경해보면 모든 글을 삭제할 수 있을까요? -
상상남자지
24.04.19 · 89.♡.161.180
오호~ 저도 잘 됩니다. 이제 참으로 rest in peace ! 입니다.
댓글을 작성하려면 이 필요합니다.
도중에 끊고 다시 실행하면 처음부터 읽어오는지 삭제가 재개되기까지 시간이 조금 걸립니다. 냅두면 지워지긴 하요.
근데 제는 댓글이 5만개가 넘었었는데, 3.5만개쯤 남은 상태부터는 아예 안 지워지더라고요.
문의드렸더니 댓글 페이지수가 세자리를 넘어가면 지워지지 않는 경우가 있다고...
일단은 내일까지 픽스 버전 올려주신다고 하셨었습니다. 저와 비슷한 경우라면 일단 새버전 올라오는거 기다려보세요.