해결된 질문
작성
·
519
·
수정됨
답변 2
1
1
안녕하세요! 질문 감사드립니다 :)
결론부터 말하면, 1. 매장의 nid(naver id)를 얻는 수작업 + 2. 특정 nid에 대한 json을 만드는 크롤링 작업을 수행했습니다.
강의에서 제공된 json 파일의 정보들은 다음과 같은 과정으로 채워넣었습니다.
원하는 매장 목록을 리스트업한다.(ex> 식스센스에 나온 매장 목록 리스트업)
네이버 지도에 하나씩 검색하며 nid를 얻는다.(ex> 네이버 지도 검색창에 '에빗'을 검색하면 url이 'https://map.naver.com/v5/search/%EC%97%90%EB%B9%97/place/1838135293'로 변경됩니다.)
2번에서 얻은 nid에 대해 크롤링을 수행한다.
'https://pcmap.place.naver.com/restaurant/1838135293/home' 에서 매장에 대한 기본정보를 크롤링합니다.
Python에서 selenium과 beautifulsoup4을 이용하여 크롤링했습니다.html = driver.page_source
soup = bs(html, "html.parser")
매장 이름처럼 눈에 보이는 정보들은name = soup.select_one('...selector...').get_text()
와 같이 코드를 작성하고,
description, 위경도처럼 page_source에서 parsing할 수 있는 정보들은description = 파싱함수(html, '"description":"', '","')
와 같이 코드를 작성했습니다.
'https://pcmap.place.naver.com/restaurant/1838135293/menu/list' 에서 매장의 메뉴판을 크롤링합니다.
크롤링된 정보들을 모아 json 파일을 작성합니다.
크롤링에 대한 설명은 강의 주제와 맞지 않아 커리큘럼에서 제외했었다는 점 양해부탁드립니다🥲
꼭 위의 과정을 거치지 않아도 다른 사이트나 다른 방법으로 매장에 대한 위경도 좌표와 여러 정보를 얻을 수만 있다면, Store의 type과 매장 상세 페이지 UI를 취향에 맞게 변경하는 것도 재미있는 개선 방향일 것 같습니다.
혹시 답변이 부족했다면 다시 댓글 남겨주시길 부탁드립니다🙏 감사합니다!