네이버 지도 웹크롤링
1095
kuen76896
작성한 질문수 1
0

웹 브라우저에서 캡쳐했듯이 저는 왼쪽바에 표시된 부분만 크롤링하여 CSV로 변환하는 것이 목표입니다.
스타트 코딩에서 "네이버 쇼핑 아이폰 13을 크롤링" 강의를 보고 참고나 힌트를 얻을 것이라 생각했는데 첫 번째는 api를 사용해서 크롤링을 하는 구현하는 방법이거나 , 두번째는 스타트 코딩에서 네이버쇼핑 크롤링 하는 법을 다시보고 코드를 비교하면서, 개발자도구에 HTML을 오픈하여 해당 CSS를 COPY SELECTOR를 가져와서 넣은뒤 반복문으로 돌려서 가져오는 방법이 맞는건지 알고 싶습니다...
두번쨰가 가장 수월할것이라고 예상을 하였지만 csv의 결과값이 누락이 되었습니다...
from bs4 import BeautifulSoup
import urllib.request
import pandas as pd
import datetime
from selenium import webdriver
import time
#[code 1]
def CoffeeBean_store(result):
CoffeeBean_URL = "https://map.naver.com/v5/entry/place/38781676?c=14140424.1634944,4509672.0214674,13,0,0,0,dh&placePath=%2Fbooking%3ForderRedirectUrl=https%253A%252F%252Fm.booking.naver.com%252Forder%252Fbizes%252F428280%252Fitems%252F3835308%253Ftheme%253Dplace%2526refererCode%253Dmenutab%26pcmap=1%26service-target=map-pc&entry=plt&area=plt"
wd = webdriver.Chrome('c:/chromedriver.exe')
for i in range(1, 10): #메뉴 수 만큼 반복한다.
wd.get(CoffeeBean_URL)
time.sleep(1)
try:
time.sleep(1)
html = wd.page_source
soupCB = BeautifulSoup(html, 'html.parser')
menu_img_h2 = soupCB.select("#root > div.naver_order_contents > div > div > div.order_list > div:nth-child(2) > div:nth-child(1) > ul > li:nth-child(1) > div > a > div.info_img > span")
menu_img = menu_img_h2[0].string
menu_name = soupCB.select('#root > div.naver_order_contents > div > div > div.order_list > div:nth-child(2) > div:nth-child(1) > ul > li:nth-child(1) > div > a > div.info_detail > div.tit')
print(menu_name) #메뉴명 출력하기
menu_price = soupCB.select('#root > div.naver_order_contents > div > div > div.order_list > div:nth-child(2) > div:nth-child(1) > ul > li:nth-child(1) > div > a > div.info_detail > div.price')
result.append([menu_img] + [menu_name] + [menu_price])
except:
continue
return
def main():
result = []
print("CoffeeBean store crawling >>>>>>>>>>>>>>>>>>")
CoffeeBean_store(result)
CB_tbl = pd.DataFrame(columns=('menu_img', 'menu_name' , 'menu_price'))
CB_tbl.to_csv('./CoffeeBean(신논현역점).csv' , encoding='cp949', mode='w', index=True)이미지는 링크로 넣어도 상관은 없습니다...
현재 작성한 코드는 다음과 같습니다...
제가 작성한 부분이 가능할지 실무진 분들께 조언을 구해봅니다...
답변 0
어플리케이션 실행 후 에러에 관하여 질문 드립니다.
2
37
2
디자인 시스템 관련 질문드립니다!
1
49
2
피그마 스킬설치 강의 중 피그마 디자인 파일 링크 관련 문의
1
41
2
실제 계좌 잔고 및 테스트중에
1
76
4





