< 입력 창에 글자 넣기 코드 >
some_tag = driver.find_element_by_id(‘’‘gsc-i-idl’‘’)
some_tag.send_keys(‘data science’)
< 버튼 클릭하는 코드 실행 >
xpath = ‘’‘//*[@id=“____gcse_0”]/div/form/table/tbody/tr/td[2]/button’‘’
some_tag = driver.find_element_by_xpath(xpath).click()
< 현재 화면 html 코드 가져오기 >
from bs4 import BeautifulSoup
req = driver.page_source
soup = BeautifulSoup(req, ‘html.parser’)
#광고를 제외한 검색 결과가 나타나는 태그를 찾을 수 있음
#검색결과 하나하나를 의미하는 태그를 찾을 수 있다.
result = soup.find_all(‘div’, ‘gsc-webResult gsc-result’)
result[0]
으로 접근 가능하다.
006-009. selenium으로 데이터 얻어오기
< 주유 가격 확인 >
from selenium import webdriver
driver = webdriver.Chrome(“../driver/chromedriver”)
driver.get(“http://www.opinet.co.kr”)
# 페이지 전환이 되지 않을 경우
#driver.get(“http://www.opinet.co.kr/searRgSelect.do”)
#로 한번 더 실행
gu_list_raw = driver.find_element_by_id(“SIGUNGU_NMO”)
gu_list = gu_list_raw.find_elements_by_tag_name(“option”)
gu_names = [option.get_attribute(“value”) for option in gu_list]
gu_names.remove(“”)
gu_names
< send_keys(gu_names[num])로 해당 값을 변경하기 >
element_get_excel = driver.find_element_by_id(“glopopd_excel”).click()
< 반복문으로 모든 구의 데이터 엑셀 파일로 저장 >
import time
fro tqdm import tqdm_notebook
for gu in tqdm_notebook(gu_names):
element = driver.find_element_by_id(“SIGUNGU_NMO”)
element.send_keys(gu)
time.sleep(2)
element_get_excel = driver.find_element_by_id(“glopopd_excel”).click()
time.sleep(1)
< 파일 목록 한번에 불러오기 >
import pandas as pd
from glob import glob
glop(“../data/지역_*.xls”)
< 파일명 저장 >
stations_files = glob(“../data/지역_*.xls”)
stations_files