안녕하세요! 오늘은 파이썬을 사용해 로또 번호를 쉽게 확인하는 방법에 대해 이야기해보려 합니다. 특히, 최신 회차 번호부터 이전 10회까지의 당첨 번호를 가져오는 간단한 코드를 함께 살펴보겠습니다.
## 1. 로또의 기본
한국의 로또는 매주 토요일에 추첨이 이루어지며, 1부터 45까지의 숫자 중에서 6개를 무작위로 선택하게 됩니다. 그래서 오늘은 이 로또 번호를 자동으로 가져와서 확인하는 코드를 만들어 보겠습니다!
## 2. 코드 소개
이 코드는 두 개의 주요 함수를 포함하고 있습니다. 하나는 최신 회차 번호를 계산하는 함수이고, 다른 하나는 특정 회차의 로또 당첨 번호를 가져오는 함수입니다. 아래 코드를 함께 보시죠.
import requests
from datetime import datetime
def get_latest_draw_no():
# 로또 1회차 기준 날짜 (2002년 12월 7일)
first_draw_date = datetime(2002, 12, 7)
# 오늘 날짜
today = datetime.today()
# 첫 회차 기준으로 경과한 일 수 계산
days_passed = (today - first_draw_date).days
# 매주 토요일에 추첨 (7일에 한 번씩 진행되므로 7로 나눔)
draw_no = (days_passed // 7) + 1
return draw_no
def get_lotto_winning_numbers(draw_no):
# 공공데이터포털 로또 API URL
url = f"https://www.dhlottery.co.kr/common.do?method=getLottoNumber&drwNo={draw_no}"
# API로부터 데이터 가져오기
response = requests.get(url)
data = response.json()
if data["returnValue"] == "success":
# 로또 번호 출력
winning_numbers = [data[f"drwtNo{i}"] for i in range(1, 7)]
bonus_number = data["bnusNo"]
return winning_numbers, bonus_number
else:
return None, None
# 최신 회차 번호 계산
latest_draw_no = get_latest_draw_no()
print(f"오늘 날짜 기준 최신 로또 회차 번호는: {latest_draw_no}회차 입니다.")
# 최신 회차와 이전 10회 로또 번호 가져오기
lotto_results = {}
for i in range(latest_draw_no, latest_draw_no - 11, -1):
numbers, bonus = get_lotto_winning_numbers(i)
if numbers:
lotto_results[i] = {
"winning_numbers": numbers,
"bonus_number": bonus
}
# 결과 출력
for draw_no, result in lotto_results.items():
print(f"{draw_no}회차: 당첨 번호: {result['winning_numbers']}, 보너스 번호: {result['bonus_number']}")
### 3. 코드 설명
- **최신 회차 번호 계산하기**:
- `get_latest_draw_no` 함수는 로또 첫 회차 기준 날짜인 2002년 12월 7일부터 오늘까지의 경과 일수를 계산하여 최신 회차 번호를 반환합니다.
- **로또 번호 가져오기**:
- `get_lotto_winning_numbers` 함수는 특정 회차 번호를 입력받아 해당 회차의 당첨 번호와 보너스 번호를 API를 통해 가져옵니다. 요청이 성공적으로 이루어지면 로또 번호를 리스트로 반환합니다.
- **결과 출력**:
- 마지막으로 최신 회차부터 이전 10회까지의 당첨 번호를 출력합니다. 각 회차의 당첨 번호와 보너스 번호를 확인할 수 있습니다.
### 4. 결과 예시
코드를 실행하면, 예를 들어 아래와 같은 결과를 볼 수 있습니다:
오늘 날짜 기준 최신 로또 회차 번호는: 1141회차 입니다.
PS C:\Users\hpyst> & E:/python/python.exe e:/workspace_python/hello.py
오늘 날짜 기준 최신 로또 회차 번호는: 1141회차 입니다.
1141회차: 당첨 번호: [7, 11, 12, 21, 26, 35], 보너스 번호: 20
1140회차: 당첨 번호: [7, 10, 22, 29, 31, 38], 보너스 번호: 15
1139회차: 당첨 번호: [5, 12, 15, 30, 37, 40], 보너스 번호: 18
1138회차: 당첨 번호: [14, 16, 19, 20, 29, 34], 보너스 번호: 35
1137회차: 당첨 번호: [4, 9, 12, 15, 33, 45], 보너스 번호: 26
1136회차: 당첨 번호: [21, 33, 35, 38, 42, 44], 보너스 번호: 1
1135회차: 당첨 번호: [1, 6, 13, 19, 21, 33], 보너스 번호: 4
1134회차: 당첨 번호: [3, 7, 9, 13, 19, 24], 보너스 번호: 23
1133회차: 당첨 번호: [13, 14, 20, 28, 29, 34], 보너스 번호: 23
1132회차: 당첨 번호: [6, 7, 19, 28, 34, 41], 보너스 번호: 5
1131회차: 당첨 번호: [1, 2, 6, 14, 27, 38], 보너스 번호: 33
이처럼 간단하게 최신 로또 번호를 확인할 수 있습니다!
### 5. 마치며
이번 포스트를 통해 파이썬으로 로또 번호를 쉽게 가져오는 방법을 알아보았습니다. 로또 번호 추첨에 대한 데이터를 쉽게 확인할 수 있으니, 여러분도 코드를 활용해 재미있는 프로젝트를 만들어보세요! 로또 당첨의 행운이 함께하길 바랍니다! 🎉
이 코드에 대해 궁금한 점이나 추가하고 싶은 내용이 있다면 언제든지 댓글로 남겨주세요. 감사합니다!
'파이썬으로 로또 1등 도전기' 카테고리의 다른 글
8일차) 특정회차 제외수 설정해서 로또번호 추출하기 (0) | 2024.10.13 |
---|---|
7일차) 로또 번호를 가져와서 특정회차 제외 번호 설정하기 (0) | 2024.10.13 |
5일차) 오늘 날짜 기준으로 최신 로또 회차 번호 알아내기 (0) | 2024.10.13 |
4일차) 로또 당첨 번호 가져오기! (공공데이터 API 활용법) (1) | 2024.10.13 |
3일차) 로또번호 5개 랜덤 생성 및 제외 숫자 기능 추가 (1) | 2024.10.13 |