반응형
스타벅스 지역구별 매장명 가져오기
지역별(광주) 선택 후 - 구별로 매장명 가져오기
store_name_list = []
store_adr_list = []
rank_list = []
url='https://www.starbucks.co.kr/store/store_map.do'
driver = wb.Chrome()
driver.get(url)
time.sleep(4)
for i in range(2,7): # range (시작값,끝값,증감) -> 끝값 포함 x +1해줘야한다.
where = driver.find_element_by_css_selector('header.loca_search > h3 > a')
where.click()
time.sleep(0.5)
gwangju = driver.find_element_by_css_selector('ul.sido_arae_box > :nth-child(3)')
gwangju.click()
time.sleep(0.5)
gu = driver.find_elements_by_css_selector('ul.gugun_arae_box > :nth-child({})'.format(i))
gu[0].click()
time.sleep(0.5)
soup = bs(driver.page_source, 'lxml')
store_name = soup.select('#mCSB_3_container > ul > li > strong')
store_adr = soup.select('ul.quickSearchResultBoxSidoGugun > li.quickResultLstCon > p.result_details')
for j in store_name:
store_name_list.append(j.text.strip())
time.sleep(0.5)
for h in store_adr:
store_adr_list.append(h.text.strip())
for k in range(len(store_name_list)):
rank_list.append(k+1)
len(store_name_list) # 지역 전체보기로 했을때 60개 매장
60
import pandas as pd
dic = {'매장명':store_name_list,'매장주소':store_adr_list,'번호':rank_list}
df = pd.DataFrame(dic)
df.set_index('번호',inplace = True)
df
매장명 매장주소
번호
1 광주비아DT 광주광역시 광산구 첨단과기로 81 (비아동)1522-3232
2 광산수완 광주광역시 광산구 장신로 134, 1~2층 (수완동)1522-3232
3 광주첨단 광주광역시 광산구 첨단중앙로 104 (월계동)1522-3232
....................................................
54 광주금호DT 광주광역시 서구 운천로 107 (쌍촌동)1522-3232
55 광주풍암 광주광역시 서구 풍암2로 8 (풍암동) 한아름빌딩1522-3232
56 광주상무시민로 광주광역시 서구 운천로 253 (치평동) 103호1522-3232
57 광주상무중앙로 광주광역시 서구 상무중앙로 46 (치평동) 1층1522-3232
58 광주화정DT 광주광역시 서구 상무대로 10801522-3232
59 광주상무DT 광주광역시 서구 상무대로 847 (쌍촌동)1522-3232
60 광주신세계DT 광주광역시 서구 죽봉대로 33 (화정동)1522-3232
같은 문제 다른코드 복습용
#같은문제 다른 코드 복습용
l_search = driver.find_element_by_css_selector('.loca_search > h3 > a')
l_search.click()
time.sleep(0.2)
local = driver.find_elements_by_css_selector('ul.sido_arae_box > li')
local[2].click() # 광주클릭
time.sleep(0.2)
gu = driver.find_elements_by_css_selector('ul.gugun_arae_box a.set_gugun_cd_btn')
add_list = []
for i in range(len(gu)):
if i != 0:
gu = driver.find_elements_by_css_selector('ul.gugun_arae_box a.set_gugun_cd_btn')
gu[i].click()
time.sleep(0.2)
soup = bs(driver.page_source, 'lxml')
add = soup.select('#mCSB_3_container > ul > li > p')
for i in add:
add_list.append(i.text)
l_search = driver.find_element_by_css_selector('.loca_search > h3 > a')
l_search.click()
time.sleep(0.2)
local = driver.find_elements_by_css_selector('ul.sido_arae_box > li')
local[2].click() # 광주클릭
time.sleep(0.2)
반응형
'빅데이터 서비스 교육 > 크롤링' 카테고리의 다른 글
크롤링 이미지 가져오기 (0) | 2022.05.17 |
---|---|
크롤링 웹페이지 데이터 수집 (0) | 2022.05.16 |
크롤링 데이터 수집 및 웹페이지 제어 (0) | 2022.05.13 |
크롤링 기초 (0) | 2022.05.12 |