본문 바로가기
Development/Python

주식 배당금 데이터 크롤링(crawling) 하기 (2)

by qWooWp 2021. 6. 1.
반응형

전 글에서 pyCharm 에서 기본 코드를 이용해서 배당금 홈페이지를 띄우는 것 까지 완성 하였다. 

 

https://qwoowp.tistory.com/75?category=817494 

 

주식 배당금 데이터 크롤링(crawling) 하기 (1)

문득 자동으로 배당금 데이터를 가져와서 내 입맛에 맞게 조정을 해서 원하는 종목을 뽑을 수 있을까? 에서 시작해서 공부해 봅니다. 예전에 했던 것들 다 까먹어서 다시 pyCharm 부터 Create Project

qwoowp.tistory.com

이제 검색 옵션을 자동으로 변경하고 원하는 데이터가 출력이 되면 

각 페이지를 이동하면서 배당금 데이터를 데이터화 시키면 된다 .

 

홈페이지를 방문하면 아래와 같이 몇가지 옵션이 있지만 실제 사용할 것은 년도 옵션만 변경을 하면서 우측 조회 버튼을 누르도록 하려고 한다. 

년도 아이템을 선택하기 위한 id 를 확인하기 위해서 

크롬 브라우저에서 ctrl+shift+I 버튼을 선택합니다. 

아래와 같이 소스코드 창이 나옵니다. 

 

 

소스창 왼쪽 위에 있는 마우스 버튼을 누르고 -> 왼쪽에서 <조회기간> 옆에 있는 2020년 이 표시괸 리스트 박스를 선택합니다. 

 

그럼 우측에 원하는 ID 가 있는 소스 위치로 이동이 됩니다. 

id 를 적어서 아래와 같이 코드를 짜줍니다. 

 

main 에서 getdata_dividend(driver, "2019년") 으로 호출하고 아래 함수에서 

위에서 찾은 id 이용해서 원한는 년도를 선택해 줍니다.  

def getdata_dividend(driver, iYear):
    print(iYear + " Search data...")

    # for debugging 윈도우 타이틀 확인하기
    print(driver.title)

    driver.find_element_by_id('selectbox2_input_0').send_keys(iYear)

ctrl+shift+f10 을 눌러서 실행하였을 때 2019년으로 변경되었는지 확인합니다. 

 

 

조회 버튼을 누르는 코드를 추가 하고 실행하면 이제 바로 데이터가 출력된 것을 확인 할 수 있습니다. 

def getdata_dividend(driver, iYear):
    print(iYear + " Search data...")

    # for debugging 윈도우 타이틀 확인하기
    print(driver.title)

    driver.find_element_by_id('selectbox2_input_0').send_keys(iYear)
    
    #조회 버튼 누르기 
    driver.find_element_by_id('image1').click()

 

이제 다음 시간에는 조회 된 데이터를 가져와서 구조화 시키는 코드를 짜보자. 

반응형

댓글