const BLOG_ID = 4962889; // 내 블로그 ID
async function fetchSubscribers() {
let page = 1;
let allSubscribers = new Map();
// 첫 요청에서 totalCount 가져오기
let firstResponse = await fetch(`https://www.tistory.com/legacy/subscription/blog/${BLOG_ID}/followers?page=${page}&sortType=recency`);
let firstData = await firstResponse.json();
if (!firstResponse.ok) {
console.error(`HTTP error! Status: ${firstResponse.status}`);
return new Map();
}
let totalCount = firstData.data.totalCount;
let pageSize = firstData.data.data.length;
let totalPages = Math.ceil(totalCount / pageSize);
// 모든 페이지 요청하여 구독자 리스트 수집
for (let i = 1; i <= totalPages; i++) {
let response = await fetch(`https://www.tistory.com/legacy/subscription/blog/${BLOG_ID}/followers?page=${i}&sortType=recency`);
let data = await response.json();
if (!response.ok) {
console.error(`HTTP error on page ${i}! Status: ${response.status}`);
continue;
}
data.data.data.forEach(sub => {
allSubscribers.set(sub.blogId, { name: sub.name, url: sub.blogUrl });
});
}
return allSubscribers;
}
async function fetchMyFollowings() {
let response = await fetch("https://www.tistory.com/legacy/subscription/user/followings?isSummary=false");
let data = await response.json();
if (!response.ok) {
console.error(`HTTP error! Status: ${response.status}`);
return new Set();
}
let myFollowings = new Set(data.data.map(following => following.id));
return myFollowings;
}
async function findNotFollowedBack() {
let mySubscribers = await fetchSubscribers();
let myFollowings = await fetchMyFollowings();
let notFollowedBack = [...mySubscribers.entries()]
.filter(([subscriberId, _]) => !myFollowings.has(subscriberId))
.map(([subscriberId, info]) => ({
id: subscriberId,
name: info.name,
url: info.url
}));
console.log("나를 구독하지만, 내가 구독하지 않은 블로그 목록:");
notFollowedBack.forEach(blog => {
console.log(`Name: ${blog.name}, BlogId: ${blog.id}, URL: ${blog.url}`);
});
}
// 실행
findNotFollowedBack();
소스코드가 빡! 나와서 놀라셨는가? 걱정 마시라!
누구나 티스토리 로그인 후 블로그 아이디만 알면 사용이 가능합니다.
우선 티스토리 메인 화면에서 로그인 후 F12를 눌려 관리자 도구를 여세요.
요소 탭에서 컨트롤+F를 눌려 blogid라고 검색하여 본인 블로그 고유 아이디를 찾으세요.
숫자로 이루어진 본인의 블로그 아이디를 소스코드 최상단 변수에 입력하세요.
const BLOG_ID = 4962889; <<< 이 숫자를 본인 숫자로 변경
해당 변수 숫자를 본인 블로그 아이디로 바꿔준다.
콘솔 탭으로 이동해서 소스코드를 붙여 넣고 엔터를 치고 기다리면 '나를 구독하지만, 내가 구독하지 않은 블로그 목록:'이라는 문구가 표출되고 그 아래 닉네임, 블로그 아이디, 블로그 URL 리스트가 뜹니다. 하나도 없을 경우 아무것도 뜨지 않습니다.
구독이 많은 경우 시간이 오래 걸릴 수 있으니 5분 정도 기다려 보시고 잘 안되실 경우 댓글로 문의하시면 친절히 알려드립니다!
끝.
+ 추가된 내용 - 자주 하는 질문 리스트
1.
질문 : 콘솔 탭으로 이동해서 소스코드 붙여 넣으면,
"경고: 이해할 수 없거나 직접 검토하지 않은 코드를 DevTools 콘솔에 붙여 넣지 마세요. 공격자가 ID를 도용하거나 컴퓨터를 제어할 수 있습니다. 아래에 {PH1}을 입력하고 Enter 키를 눌러 붙여넣기를 허용하세요." 이렇게 떠요.
답변 : 콘솔 창에 "붙여넣기 허용"이라고 입력하시면 제한이 풀립니다.
↓ 아래는 그 반대의 경우 바로 가기 링크입니다.
2025.03.06 - [IT/IT 인터넷] - 티스토리 블로그에서 내가 구독 중이지만 나를 구독하지 않은 블로그 찾는 방법(맞구독 작업 시 유용하게 사용하세요)
티스토리 블로그에서 내가 구독 중이지만 나를 구독하지 않은 블로그 찾는 방법(맞구독 작업 시
const BLOG_ID = 4962889; // 내 블로그 IDasync function fetchSubscribers() { let page = 1; let allSubscribers = new Set(); // 첫 요청에서 totalCount 가져오기 let firstResponse = await fetch(`https://www.tistory.com/legacy/subscription/blog/${BL
codejjang.tistory.com
'IT > IT 인터넷' 카테고리의 다른 글
티스토리 블로그에서 내가 구독 중이지만 나를 구독하지 않은 블로그 찾는 방법(맞구독 작업 시 유용하게 사용하세요) (29) | 2025.03.06 |
---|---|
[자바스크립트] 내가 뽑은 비트 연산자에 대한 활용 베스트 TOP 3와 정성 가득 설명글 (6) | 2025.02.25 |
[자바스크립트] JavaScript에서 var, let, const 차이 및 가이드 (8) | 2025.02.21 |
[자바스크립트] 키워드에 대한 완벽한 가이드 (2) | 2025.02.19 |
[자바스크립트] 디버깅 로그 개발자 도구에서 확인하기 (0) | 2025.02.19 |