Requirements

image.png

일기 관련해서 통계자료가 있을까 찾아보니 마땅한 자료가 없었다. 하지만 일기장 관련 사이트는 많지 않을까 하는 판단하에 검색을 진행한 결과 ‘모두의 일기장’ 이라는 사이트를 발견했다.

공개 일기가 많아서 크롤링으로 데이터를 추출하면 통계를 낼 수 있다고 판단하였다.

오늘의 일기

Cards

https://todaysdiary.net/everydiary/?page=1

image.png

image.png

image.png

Diary

https://todaysdiary.net/post/139069/

image.png

public | private 를 모두 포함해서 139,069개의 데이터가 있고, 이를 다 뒤져보는 것은 무리다.

Cards 페이지에서 post id를 먼저 긁어모으고, 그걸 기반으로 타겟팅해서 저 post 페이지로 넘어간다.

image.png

image.png

Parsed Post IDs

image.png

Parsed Posts (Diary)

image.png

멀티 스레딩으로 싱글 스레드 대비 12배 수준의 속도로 업그레이드했다.

물론 그러다보니 예외들도 발생했는데, 로그들을 보면 너무 빈번한 요청으로 인해 일시적으로 차단먹은 요청도 있고, 빠른 속도로 많은 요청을 보내다 보니 상대 측 서버에 과부화가 온건지 아닌지 여튼 네트워크 이슈로 실패한 것도 있다. 그리고 post id를 긁어왔을 시점과 실제로 긁어왔던 시점이 차이가 나는데, 그 안에 게시글이 하나가 비공개처리되었나보다. (공개 일기를 긁어왔고 다 접속 가능성 확인했는데, 이거 에러 확인 후 들어갔던 시점엔 post 139898이 비공개 처리되어있었음.) 근데, 통계 구하는데 5개 누락된다고 크게 문제될까 싶어서 이대로 진행한다.