반응형

로또 번호를 가져와서 화면에 출력하고 파일에 저장하기

 

글. 오상문 sualchi@daum.net

 

다음 소스 코드는 로또 1등 번호를 가져와서 회차별로 화면에 출력하고, 파일에 모두 저장하는 파이썬 예제입니다.

 

import random
import requests
# import csv, codecs

 

# 지정된 회차의 로또 1등 번호 가져오는 함수

# nth : 회차

def get_lotto(nth):

    # JSON 파라미터 지정
    params = {  
        'method' : 'getLottoNumber',
        'drwNo' : nth
    }

    # nlotto.co.kr 사이트에서 로또 당첨 번호를 가져온다.

    req = requests.get('https://www.nlotto.co.kr/common.do', params=params)
    r = req.json()
    if r['returnValue'] == 'success':  # 가져오기에 성공했으면
        lotto = []
        for i in range(1,7):
            lotto.append(r['drwtNo'+str(i)])       
        return lotto
    else:   # 실패
        return False

 

# 로또 번호를 가져와서 리스트에 저장하고 화면에 출력한다.

data = []
i=1
while True:  # 회차별 당첨 번호를 모두 가져옴
    r = get_lotto(i)
    if r != False:
        data.append(r)
        print('%d:'%i, r)
        i += 1
    else:
        break

 

# 저장된 로또 번호를 lotto.txt 파일에 저장한다.

with open("lotto.txt", 'w') as f:
    for d in data:
        f.write(str(sorted(d))+'\n')

 

<이상>

 

 

반응형

+ Recent posts