팁과 노하우 게시판

전체보기

모바일 상단 메뉴

본문 페이지

[환기] (환기) 검은사막에 현질한 금액 알아보기

아이콘 대표주주
댓글: 25 개
조회: 8439
추천: 6
2025-05-07 21:04:47
예전에 민트민트티 분이 올리셨던 글입니다.


안녕하세요 검은사막 몇 년간 해오면서 사용한 총금액을 알아보고자 합니다.
24년 1월 1일 이후로 검은 사막 홈페이지에서 모든 정보 조회가 가능하다는 문의 답변을 받고
일일이 더하기 귀찮아 구현한 자바스크립트 코드입니다. 
(동일명의 아이디전부 조회됩니다)
(카카오 서비스기간은 조회안된다고 합니다!)

[사용법]
1. 검은 사막 홈페이지 로그인을 한다.
2. 프로필 아이콘에 마우스를 올린 후 [계정정보]로 들어갑니다.
3. [구매'사용 내역] 에 들어간 후 F12를 눌러 개발자도 구를 켜주세요 

3 까지 하신 후 아래 이미지와 같이 Console 탭을 열어주세요





해당문구가 뜨신다면 콘솔창에 allow pasting을 입력후 엔터 눌러주세요.

let startYear = 2014;
let endYear = 2025;
let total = 0;

const today = new Date();
const todayYear = today.getFullYear();
const todayMonth = String(today.getMonth() + 1).padStart(2, '0');
const todayDate = String(today.getDate()).padStart(2, '0');
const endDateFormatted = `${todayYear}.${todayMonth}.${todayDate}`;

async function fetchAmountsForYear(year) {
    let yearTotal = 0;
    let page = 1;
    let hasNextPage = true;

    while (hasNextPage) {
        const startDate = `${year}.01.01`;
        const endDate = year === todayYear ? endDateFormatted : `${year}.12.31`;
        const baseUrl = `?startDate=${startDate}&endDate=${endDate}&Page=${page}`;
        const response = await fetch(baseUrl);
        const text = await response.text();
        const parser = new DOMParser();
        const doc = parser.parseFromString(text, 'text/html');

        var emptyMessageCell = doc.querySelector('td.empty');
        if (emptyMessageCell && emptyMessageCell.textContent.trim() === '해당이력이 없습니다.') {
            console.log(`년도 ${year}에 해당 이력이 없습니다. 다음 년도로 진행합니다.`);
            return null;
        }

        const amounts = doc.querySelectorAll('td.amount');
        amounts.forEach(amount => {
            const value = parseInt(amount.textContent.replace(/,/g, ''), 10);
            if (value > 0) {
                yearTotal += value;
            }
        });

        
        const nextButton = doc.querySelector('a.btn_arrow.next');
        hasNextPage = nextButton !== null;
        page++;
    }

    return yearTotal;
}


async function fetchAllAmounts() {
    for (let year = startYear; year <= endYear; year++) {
        const yearTotal = await fetchAmountsForYear(year);
        if (yearTotal !== null) {
            total += yearTotal;
            const formattedYearTotal = yearTotal.toString().replace(/B(?=(d{3})+(?!d))/g, ",");
            console.log(`${year}년의 총 금액: ${formattedYearTotal}원`);
        }
    }

    const formattedTotal = total.toString().replace(/B(?=(d{3})+(?!d))/g, ",");
    console.log("지금까지 사용한 총 금액 :", formattedTotal + "원");
}

fetchAllAmounts();




위코드 복사후 콘솔창에 넣고 실행하시면 지금까지 얼마를 검은사막에 사용하였는지 나옵니다.



모바일 게시판 하단버튼

댓글

새로고침
새로고침

모바일 게시판 하단버튼

지금 뜨는 인벤

더보기+

모바일 게시판 리스트

모바일 게시판 하단버튼

글쓰기

모바일 게시판 페이징

최근 HOT한 콘텐츠

  • 검사
  • 게임
  • IT
  • 유머
  • 연예
AD