퇴근할때즘에 키즈노트에 등록된 어린이집 (원본 사이즈)사진 다운로드 스크립트를 만들어봤습니다.
거창하게 툴 같은건 아니고 ㅋ('ㅅ')ㅋ
키즈노트 로그인하고 알림장 목록 조회 결과물을 긁어서 json으로 만들어서 로컬에서 돌리는 형태입니다.
알림장 조회시 무제한 목록 데이터 조회가되서.. 쉽게 모든 데이터를 한번에 다운로드 할수 있었습니다 ㅋ('ㅅ')ㅋ
어린이집 등교일이 300일 조금 넘었는데 이미지 파일은 3,600여개가 되네욤.. 많이 찍긴했네용 ㅋ'ㅅ'ㅋ
이미지 파일들은 카카오 CDN에 올라가있는것 같아서 키즈 노트 서버 자체에 부하(?)는 없는걸로 하겠습니다아.. ㅋ'ㅅ'ㅋ
순서는.. 대충 아래와 같습니다 ㅋ'ㅅ'ㅋ
키즈노트 로그인 -> 알림장 목록 페이지 이동 -> 크롬 개발자 도구에서 알림장 목록 데이터 조회 -> 알림장 데이터 로컬 JSON저장 -> 스크립트를 통해 이미지 파일 로컬에 다운로드 ..
추가적으로 다운로드 받은 이미지의 exif항목에 알림장 내용까지 추가하긴 하는데, 제가 작성한 exif필드가 아이폰,구글포토의 설명 항목 필드와 달라서(필드는 뭔지 모름..) 이건 좀 연구해봐야겠네용 ㅋ'ㅅ'ㅋ
코드는 요기에 ㅋ'ㅅ'ㅋ
https://gist.github.com/yongteak/884f455e5718fa023229bfa893d00b26


무서워서 엄두를 못내고 있다가 희망을 봅니다..
ㅇㄷ!
json 파일을 일단 어떻게 쓰는지부터 스터디해봐야겠네요ㅠ
node.js에서 실행해야 하는 스크립트인거지요?
mac 환경이고 node.js는 기존에 설치되어있었습니다.(다른 추가 라이브러리 설치가 더 필요한건지 확인불가)
https://gist.github.com/yongteak/17abf773084b96b3f72b759fb9db1d0c
https://www.kidsnote.com/api/v1_2/children/1234567/reports/?page_size=9999&tz=Asia%2FSeoul&child=1234567
로그인 하신 후 1234567 = 본인 자녀의 아이디
page_size=20 -> 9999 로 변경.
첨부이미지 상단 : page_size=9999
첨부이미지 상단 : page_size=20
prev, next에 null이 보이면 모두 불러온거라 생각됩니다.
해보고싶은데 처음부터 막히네요 ㅠㅠ
F12 눌러서 개발자 도구 실행한한 뒤에
사이트 로그인 후 https://www.kidsnote.com/service/report (추억 알림장) 열기.
1, 2, 3, 4 순서로 확인하시면 됩니다.
필요한건 3번에서 child=xxxx 제가 지워둔 숫자가 각 로그인한 유저의 child id예요. <- 중요
4번에서 보시면 response 결과가 나오는데 이 데이터 내용을 kidsnote.json으로 저장하셔야합니다.
(위 브라우저에서는 12개의 데이터만 가져온거라(page_size=12) response 화면에 12개의 데이터만 들어와 있는 상태입니다.(99999 로 변경필요)
이후에는 우왕굳님이 댓글달아주신대로
(nodejs 자체 기능으로만 사용)
https://gist.github.com/yongteak/17abf773084b96b3f72b759fb9db1d0c
이쪽 코드를 다운받으시고(xxxx.js형태로 저장합니다)
node.js 라는 프로그램 설치 후 xxxx.js와 위에서 저장한 아이의 데이터(kidsnote.json)을 같은 폴더에 놓고
node xxxx.js <- 를 실행하시면 다운로드가 시작됩니다.
너무너무 감사드립니다 ^^
혹시 앨범도 하려면 어느부분 수정해야하는지 알려주실수 있나요?
감사합니다.
참고로 이미지에 메타 데이터 필요 하지 않거나 오류 나시는 분은 해당 부분 주석 처리 "//" 하시고 실행 하시면 5초 기다림 없이 더 빠르게 진행 됩니다.
// 메타데이터 추가
// await addMetadataToImage(tempFilename, content);
추가로 앨범 메뉴가 새로 생겨서(만드실때는 키즈노트에 앨범이 없었음) 대응이 안되어 있어 소스를 조금더 수정 해야 하네요.
*안되시는 분들 팁을 드리면 저는 에러가 좀 나고 실행이 안되서 cmd를 이용해 실행했습니다.
cmd 실행 > cd 폴더 경로(C 바로 아래 만드는걸 추천) > node xxxx.js 로 실행하시면 됩니다.
에러 날경우 에러 메시지 복사해서 gpt에게 물어보시면 해결방법을 쉽게 찾을 수 있습니다.