티스토리 뷰

반응형

그 간 여러번의 포스팅을 통해서 네이버 부동산에 대한 정보를 들여다 볼 수 있었다. 

 

https://cocoabba.tistory.com/56

 

[PYTHON] 네이버 부동산 상가 매물 크롤링하기(1/4)

앞선 포스팅에 이어 약 1년이 지난 시점에 관련 질문이 있는 듯 하여 각 과정을 아래와 같은 단계로 포스팅하려고 합니다. https://cocoabba.tistory.com/42 [PYTHON] 네이버 부동산 상가 매물 크롤링하기 개

cocoabba.tistory.com

https://cocoabba.tistory.com/57

 

[PYTHON] 네이버 부동산 상가 매물 크롤링하기(2/4)

앞선 포스팅에서 파이선을 이용하여 네이버 부동산 상가 매물 크롤링을 하기 위한 첫 단계로 개발자도구를 활용하여 PC 웹 페이지에 접근하여 과정 별 데이터를 확인하였다. 원하는 데이터가 jso

cocoabba.tistory.com

https://cocoabba.tistory.com/58

 

[PYTHON] 네이버 부동산 상가 매물 크롤링하기(3/4)

앞선 포스팅에서 python을 이용하여 네이버 부동산 상가 매물 크롤링을 하기 위한 두번째 단계로 개발자도구를 활용하여 PC가 아닌 모바일 웹 페이지에 접근하여 PC에서 요청 시 발생하는 정보보

cocoabba.tistory.com

https://cocoabba.tistory.com/59

 

[PYTHON] 네이버 부동산 상가 매물 크롤링하기(4/4)

앞선 포스팅 1~3에서 python을 이용하여 네이버 부동산 상가 매물 크롤링을 하기 위한 과정을 세번째 단계로 정리하여 포스팅 하였다. 하지만 이렇게 코드로는 사용성이 낮아지는 부분이 있어서,

cocoabba.tistory.com

 

본 포스팅 부터는 전국의 모든 아파트 단지 정보를 추출하기 위한 포스팅을 진행하려고 한다. 

 

우선 네이버 부동산에서 어떤 정보를 읽어와야 하는지, 아웃풋이 되는 엑셀에는 어떤 정보들을 담아야 하는지 본 포스팅에서 확인 후 순차적으로 포스팅을 진행할 예정이다.

 

목표 : 네이버 부동산에서 전국 모든 아파트/오피스텔 단지 정보 추출하기
   - 항목 : 아파트, 매매가, 전세가, 평형구조, 구조 별 세부 정보


1. 네이버 부동산 단지 정보 살펴보기  (개발자 도구 포함), 결과 양식 확인하기
2. 시/도, 시/군/구, 읍/면/동 정보를 순차적으로 가져오기 (핵심)
3. Json 데이터 중 원하는 데이터 Pandas를 활용하여 Excel 에 추가하기
4. GUI 버전으로 레이아웃 구성하기

 

네이버 부동산에서 어떤 정보들을 보여주고 있는지 확인해보자.

N사 아파트·오피스텔 메뉴에서 원하는 매물 구분 선택

 

지역 선택 1단계 (시(특별, 광역시)/도) -> 2단계 (시/군/구) -> 3단계 (읍/면/동)
읍/면/동 선택 후 해당 단지 내에 존재하는 주거용 부동산 단지 선택 => 단지 매물, 단지 기본정보, 면적 별 정보 열람 가능

 

이번 과정을 통해 브라우저 상 보이는 정보를 엑셀에 담을 예정이다. 

특히, 매물에 대한 정보와 단지 정보 (단지 내 면적별 정보에 대해서는 한 뎁스 안으로 확인하여 기록)도 함께 저장하려고 한다. 

 

브라우저 상 이러한 절차를 확인했으면 위 각 과정 진행 시 개발자 도구에서 우리가 원하는 데이터를 어떻게 가져와야 할 지 확인이 필요하다. 그럼 이어서 개발자도구에서의 데이터를 확인해보자!

(사실 여기가 이 전체 크롤링에서 가장 핵심이 되는 부분이다..!!!)

 

1. 시/도 클릭 시 개발자 도구에서 확인한 응답 패킷 확인

시/도 버튼 클릭("list?cortarNo=0000000000") 시 전국의 시/도 리스트 응답

이 부분이 전체에서 가장 핵심이 되는 부분이다.

네이버 부동산 화면 내에서 "경기도" 탭을 클릭할 경우( "list?cortarNo=0000000000" 요청), 서울시-경기도 를 시작으로 전국 특별시-광역시-특별자치도를 포함하여 전국 17개 시/도 리스트를 json 타입으로 응답한다. 개발자 도구에서는 Network 탭에서 Type을 "Fetch/XHR" 로 선택하여 값을 확인하였다. 

[개발자 도구 > network > fetch/XHR]

해당 섹션은 웹페이지가 백엔드와 통신하는 모든 비동기 요청(ajax요청 등)을 표시
 - ajax는 웹페이지가 서버와 데이터를 주고받을 때 사용하는 기술
 - 주로 자바스크립트에서 실행되며, 페이지를 새로고침하지 않고도 서버로부터 데이터를 가져오거나 서버에 데이터를 보내는데 사용

해당 섹션에서 보이는 각 요청은 백엔드의 특정 엔드포인트와의 통신을 나타냄
[확인할 수 있는 내용]
 - 각 요청의 URL
 - HTTP 메서드(GET, POST등)
 - 응답 상태 코드
 - 응답 시간
 - 응답으로 받은 데이터의 정보를 볼 수 있음

 

시/도 선택에서는 "경기도"를 선택해 보았다. 

 

2. 시/도 선택("경기도") 시 개발자 도구에서 확인한 응답 패킷 확인

"경기도" 클릭("list?cortarNo=4100000000") 시 경기도 내 시/군/구 리스트 응답

비슷한 구조로 시/도 선택 화면에서 "경기도" 탭을 클릭할 경우( "list?cortarNo=4100000000" 요청), 가평군-고양시 덕양구를 시작으로 경기도 내 모든 시/군/구 리스트를 json 타입으로 응답한다. 1~2번을 잘 생각해보면, 3~4번을 예상할 수 있을 것이다. 

 

시/군/구 선택에서는 "부천시"를 선택해 보았다. 

 

3. 시/군/구("부천시") 선택 시 개발자 도구에서 확인한 응답 패킷 확인

"부천시" 클릭("list?cortarNo=4119000000") 시 부천시 내의 읍/면/동 리스트 응답

비슷한 구조로 시/군/구 선택 화면에서 "부천시" 탭을 클릭할 경우( "list?cortarNo=4119000000" 요청), 계수동-고강동을 시작으로 부천시 내 모든 읍/면/동 리스트를 json 타입으로 응답한다. 

 

읍/면/동 선택에서는 "옥길동"를 선택해 보았다. 

 

4. 읍/면/동("옥길동") 선택 시 개발자 도구에서 확인한 응답 패킷 확인

"옥길동" 클릭("list?cortarNo=4119011500") 시 옥길동 내의 아파트 단지 리스트 응답

 

비슷한 구조로 읍/면/동 선택 화면에서 "옥길동" 탭을 클릭할 경우( "list?cortarNo=4119011500" 요청) 해당 지역 내 모든 아파트 단지 리스트를 json 타입으로 응답한다. 

 

이제 네이버 부동산에서 확인해야 할 대부분의 정보를 획득하였다. 실제로 위의 과정을 수행해보면, 단지 선택 시 아파트 매물 목록을 확인할 수 있다. (본 포스팅에서는 단지 목록을 가져오는 단계까지 진행 예정)

 

2번째 포스팅에서부터는  " 2. 시/도, 시/군/구, 읍/면/동 정보를 순차적으로 가져오기 (핵심)" 과정을 실제로 코드와 함께 진행 할 예정이다.

 

본 글을 읽어주시는 모든 분들 2024년 새해 복 많이 받으세요.
올해 본인이 원하는 모든 일들 꼭 이루시는 새로운 한 해 되시길 진심으로 바랍니다. 

감사합니다.
반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함