본문 바로가기
반응형

crawler3

[Python] Selenium으로 KBO 기록실을 털어보자 -2탄 이전 글에선 Beautiful soup을 통해서 KBO 기록실 크롤러를 라이트하게 만들어봤는데, 이번엔 Selenium과 Beautiful soup을 활용해서 만들어보려 한다. Selenium을 활용하기 위해선 자신이 사용하는 브라우저의 Web driver가 필요하다. 내가 가장 자주 사용하는 것이 Chrome이기 때문에 Chrome에 맞춰 진행하려 한다. (업무상에선 파이어 폭스도 사용할 때가 있기도 하다.) https://sites.google.com/a/chromium.org/chromedriver/downloads Downloads - ChromeDriver - WebDriver for Chrome WebDriver for Chrome sites.google.com 해당 링크를 통해서 web dr.. 2020. 7. 13.
[Python] Beautifulsoup으로 KBO 기록실을 털어보자 -1탄 예전에 야구를 참 즐겨봤었다. 지역이 충청이다 보니 한화를 응원했는데, 난 부처가 아닌 것을 알게되었다. 그러면서 야구를 안보게 되었다. 그러다 회사때문에 성남으로 이사오고 주변 친구들도 야구를 보게되면서 나도 다시 야구를 보게 되었다. 대신 한화가 아닌 KT를 응원하고 있다!! 그러다 문득, KBO 역대 기록들을 수집하고 이걸 시각화하는 걸 해보면 재밌지 않을까? 라는 생각에 KBO 크롤러를 만들게 되었다. 크롤러는 Beautifulsoup을 사용하는 버전과, Selenium을 사용하는 버전으로 나눠서 만들 예정인데, 오늘 올릴 버전은 Beautifulsoup이다. KBO 기록실 주소는 아래와 같다. https://www.koreabaseball.com/Record/Player/Runner/Basic... 2020. 6. 21.
[Selenium] 체크박스 상태 확인 크롤러를 통해서 데이터를 수집하는 것이 애매해 데이터를 다운 받는 경우가 종종 있다. 그냥 다운로드 할 수 있으면 다행이지만 "요약행"이라든가, "총합행"이라든가.. 하는 옵션이 추가되어 있는 경우가 있다. 이러한 행들의 경우에는 열 구분이 제대로 되어 있지 않아 해당 파읽을 읽었을 때 문제가 생기는 경우가 있다. 체크 박스에 대한 attribute가 제대로 있으면 다행지만 그렇지 않은 경우가 있는데 나는 아래와 같이 해결했다. if driver.find_element_by_xpath('//input[@type="checkbox"]').get_attribute('checked'): driver.find_elements_by_class_name('uiInputLabelLabel')[-1].click() x.. 2019. 3. 30.
반응형