All Articles

Daily log - 44일차


유저 테이블을 제외한 그 외 테이블만으로 우선 모델링은 마무리했다. 유저 테이블은 소셜 로그인 기능 구현하면서 만들기로. aquery를 바탕으로 models.py를 작성했는데, 몇 번 해봤다고 금방 끝냈다. 자잘한 오타는 좀 있었지만… 손가락 단속하자. 모델 작성 완료 후 각자 파트 나눠서 크롤링을 시작했다. 1차 프로젝트 때에는 beautiful soup, selenium만으로 크롤링을 해서 api 크롤링은 이번에 처음으로 해봤는데 정말 간편했다. api가 있으면 편하다는 게 이제 이해된다. 처음엔 무슨 말인지 몰랐다가 더 배우면서, 프로젝트 하면서 알게되는 것이 조금씩 생긴다.

순탄하게 크롤링 하나 했는데 매물 상세 페이지를 크롤링 하려고 했더니 클래스 이름이 암호화한 것처럼 복잡모호하고 겹치는 클래스 명이 많더라. 도저히 같은 요소 간 공통점을 찾아 발라낼 수가 없어서 왕멘붕. xpath로도 해보고 selector로도 해봤는데 모든 매물 페이지에서 동일한 경로가 아니라서 실패했다. 같은 요소인데도 어떤 건 div 태그의 4번째 자식 태그인데 어떤 페이지에서는 2번째라서 정말 순도 100퍼센트 손크롤링을 해야하나 오만가지 생각이 머리를 스쳤다.

그러던 중 우연히 매물별 api 주소를 찾았고, 아파트는 이빨 빠져있는 것처럼 주요 정보가 null인 것이 많아서 원룸, 오피스텔 중 프론트와 이야기 해보고 결정하기로 했다. 프론트에서는 이미 레이아웃을 작업해놓은 상태라 그나마 아파트 페이지와 비슷한 오피스텔 매물을 다루기로 최종 결정했다. 프, 백 모두가 만족한 결론을 내려서 후련했다.

모델링 수정을 다음 날 할까 했지만 이왕이면 오늘 끝내는 게 좋을 것 같아서 바로 작업을 시작했다. 시간 가는 줄 모르고 작업하다가 겨우 막차 타고 퇴근! 차 놓칠뻔했다. 반스 신고 쿵쿵 뛰어서 발바닥 너무 아프다.