JJUNNAK's

[ Selenium ] 로또 당첨번호 크롤링 예제 본문

Crawling

[ Selenium ] 로또 당첨번호 크롤링 예제

최낙준 2023. 1. 13. 04:20
대상 사이트

https://search.naver.com/search.naver?sm=tab_hty.top&where=nexearch&query=%EB%A1%9C%EB%98%90%EB%8B%B9%EC%B2%A8%EB%B2%88%ED%98%B8&oquery=%EB%A1%9C%EB%98%90&tqi=hWeswlp0J1Zssnko4hCssssstxR-268480

 

로또당첨번호 : 네이버 통합검색

'로또당첨번호'의 네이버 통합검색 결과입니다.

search.naver.com

 

코드
from bs4 import BeautifulSoup
from selenium import webdriver

# 드라이버 경로
driver = webdriver.Chrome("C:/Users/nackjun/chromedriver.exe")

# 로딩 3초대기
driver.implicitly_wait(3)

# 로또 당첨 사이트 url
driver.get("https://search.naver.com/search.naver?sm=tab_hty.top&where=nexearch&query=%EB%A1%9C%EB%98%90%EB%8B%B9%EC%B2%A8%EB%B2%88%ED%98%B8&oquery=%EB%A1%9C%EB%98%90&tqi=hWeswlp0J1Zssnko4hCssssstxR-268480")

# site 변수에 driver에서 받은 html코드 저장.
page = driver.page_source
site = BeautifulSoup(page,"html.parser")

# div 태그에 속성을 추가하여 당첨번호 list 추출
number_div = site.find_all("div",{"class":"winning_number"})
bonus_div = site.find_all("div",{'class':'bonus_number'})

# 추출된 정보에서 span태그로  번호영역만 추출
number = number_div[0].find_all("span")
bonus = bonus_div[0].find_all("span")

# 결과를 저장할 리스트 result
result = []

# result 에 추출된 번호 '텍스트만' 추가
for i in number:
    result.append(i.get_text())

for i in bonus:
    result.append(i.get_text())

# 당첨번호 출력
for i in range(6):
    if i == 5:
        print("보너스 번호 : ", result[i])
    else:
        print(str(i+1)+"번 공 : ",result[i])

 

 

 

결과
C:\Users\nackjun\anaconda3\envs\crolling\python.exe C:/Users/nackjun/PycharmProjects/crolling/Test/practice_03.py
1번 공 :  9
2번 공 :  18
3번 공 :  20
4번 공 :  22
5번 공 :  38
보너스 번호 :  44
Comments