카테고리 없음
데이터 추출 해버리기 1 (세계 경제 지표) - 작성중 초안
웅수몬
2023. 2. 13. 08:50
간단하게 세계 경제 지표를 제공해주는 사이트다.
나라 이름, Last, Previous만 긁어보도록 한다.
from selenium import webdriver
import time
import re
시작은 셀레니움이다. 웹 드라이버를 사용해 크롬을 실행시켜보자!
서버 사양에 따라 time 모듈을 통해 딜레이를 주는 것이 좋다.
값을 원하는 값으로 넘겨야 하기 때문에 레젝스 모듈도 import 해준다.
def get_terror_data(): # return : ['Ranking', 'Country', 'Last', 'Previous']
# 옵션 생성
options = webdriver.ChromeOptions()
# 창 숨기는 옵션 추가
options.add_argument("--headless")
options.add_argument("--no-sandbox")
# driver 실행
driver = webdriver.Chrome("./chromedriver", options=options)
# driver = webdriver.Chrome(options=options)
함수 생성.
크롬 드라이버를 사용할 때는 항상 ChromeOptions 인자를 넣어줘야 된다.
서버 리소스를 낭비할 필요가 없기 때문에 옵션에 --headless, --no-sandbos 를 추가하여 창을 숨겨준다.
GPU 에러가 나온다면 크롬 자체 문제이니 최신 버전으로 다시 받아주자.
나는 구지구지구지 구버전을 사용하고 싶다면 options.add_argument("--disable-gpu")를 사용하자. 비추천
크롬 버전에 맞는 웹 드라이버를 다운로드 받아주고 위치를 입력하고 인자를 넣어준다. 안넣으면 실행 안된다.
driver.implicitly_wait(3)
driver.get('https://tradingeconomics.com/country-list/terrorism-index')
time.sleep(1)
html = driver.page_source
3초안에 페이지가 로딩되면 넘어간다는 뜻이다.
time.sleep()값은 서버 사양에 따라 조절하면 된다.
페이지 소스를 변수에 넣는다. 원하는 값만 뽑아야 하니까!
작성중