
주의 : 저는 전문가가 아니며, 취미로 코딩을 하는 초보자입니다 ^^
넓은 마음으로 읽어주세요~
원래 BeautifulSoup 를 쓰다가 크롤링이 안될때가 있어서 Selenium으로 갈아 타게 되었네요
BeautifulSoup 보다 Selenium이 더 쉬운거 같습니다 ..ㅎㅎ
Selenium 라이브러리를 통해 웹크롤링을 해보겠습니다.
웹브라우저는 Chrom을 사용한다고 가정하겠습니다.
1. 라이브러리를 설치해주세요
pip install selenium
2. 크롬 webdriver 를 다운받아줍니다.
chromedriver.chromium.org/downloads
위 링크를 들어가서 아래 다운로드 링크중 본인의 크롬 버전에 맞는 녀석을 다운받아줍니다.

※크롬 버전 확인하는 방법

(코드예제)
from selenium import webdriver
driver = webdriver.Chrome('C:\\Users\\CYM\\PycharmProjects\\TelegramBot\\chromedriver')
driver.get('https://scolkg.com/')
driver.implicitly_wait(time_to_wait=5)
element = driver.find_element_by_xpath('//*[@id="app_coinboard"]/div[2]/table/tbody/tr[8]/td[6]').text
driver.quit()
(코드분석)
from selenium import webdriver
driver = webdriver.Chrome('WebDriver.exe 파일 있는 경로 입력')
driver.get('크롤링할 URL 입력')
driver.implicitly_wait(time_to_wait=5)
element = driver.find_element_by_xpath('크롤링 원하는 값 XPath 입력').text
driver.quit()
● chromedriver.exe 경로입력할때 폴더경로 입력하고, 파일명은 exe 제외하고 입력하면 된다.
● implicitly_wait(time_to_wait=5) 의 의미는 5초 동안 페이지가 로딩되는걸 기다려주다는 의미
● find_element_by_xpath 는 html의 xpath 를 이용애 원하는 값을 긁어온다.
뒤에 .text를 입력하면 그중 텍스트만 읽어올 수 있다.
- Xpath 가져오는 방법 : 크롬 우클릭 -> 검사 클릭
아래 아이콘 클릭해서 웹화면에 갖다대고 클릭하면 html 코드 위치를 알수 있음
해당코드를 우클릭해서 Copy -> Copy XPath 클릭

● driver.quit() 은 크롤링이 완료된후 웹브라우저를 닫는다.
이정도만 알면 크롤링해서 값 불러오는데는 문제 없는거 같네요 ~
'파이썬' 카테고리의 다른 글
[파이썬] 업비트 API로 자동매매 프로그램 만들기(매수/매도/주문정보확인) (0) | 2021.02.13 |
---|---|
복습용 파이썬 기본 문법-1 (1) | 2020.09.01 |