기본 문법과 웹데이터 불러오는 방법을 공부하고 어떻게 활용하는지 궁금했는데 이렇게 사용하는 방법이 있었군요. 중간 중간 넘어가는 과정이 조금 이해가 안 가는 부분이 있기는 하지만 그건 제가 다시 찾아보고 공부해봐야겠네요 잘 보고 갑니다. 더 많은 파이썬의 활용 부분 부탁드립니다
33번줄 if numbers not in old_lotto_numbers or numbers not in my_lotto_numbers: 에서 or가 아니라 and여야 하지 않나요? or는 둘중에 하나만 참이면 되니 뒷조건(my_lotto_numbers)에 없으면 기존 당첨번호에 있더라도 못 걸러 내지낳아요.
강의 첫부분인 832회차 번호만 print하려고 먼저 모듈을 import 한뒤 get_lotto_numbers함수까지는 정상적으로 실행이 됐지만 print(get_lotto_numbers(832))라고 입력하니 ConnectionError: HTTPSConnectionPool(host='www.www.dhlottery.co.kr', port=443): Max retries exceeded with url: /common.do?method=getLottoNumber&drwNo=832 (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 11001] getaddrinfo failed')) 라는 오류가 떴는데 어떻게 해야하죠?
좀 봐주세요. 영 초보라...;; import requests ........................................... .f = open("old.txt", 'w') for nums in old_lotto_numbers: f.write(str(sorted(nums)) + " ") next print(sorted(numbers)) f.close() print(sorted(numbers)) 1개 나오는데 5개 또는 그 이상을 뽐으려면 어케 하는지요....
안녕하세요 오늘도 여전히 낙첨이지만 또 돌려보려고 했는데 C:\Users\my\Desktop\lotto\venv\Scripts\python.exe C:/Users/my/Desktop/lotto/lotto_2.py Traceback (most recent call last): File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\connectionpool.py", line 670, in urlopen httplib_response = self._make_request( File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\connectionpool.py", line 381, in _make_request self._validate_conn(conn) File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\connectionpool.py", line 976, in _validate_conn conn.connect() File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\connection.py", line 361, in connect self.sock = ssl_wrap_socket( File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\util\ssl_.py", line 377, in ssl_wrap_socket return context.wrap_socket(sock, server_hostname=server_hostname) File "C:\Users\my\AppData\Local\Programs\Python\Python38-32\lib\ssl.py", line 500, in wrap_socket return self.sslsocket_class._create( File "C:\Users\my\AppData\Local\Programs\Python\Python38-32\lib\ssl.py", line 1040, in _create self.do_handshake() File "C:\Users\my\AppData\Local\Programs\Python\Python38-32\lib\ssl.py", line 1309, in do_handshake self._sslobj.do_handshake() ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1108) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Users\my\Desktop\lotto\venv\lib\site-packages equests\adapters.py", line 439, in send resp = conn.urlopen( File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\connectionpool.py", line 724, in urlopen retries = retries.increment( File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\util etry.py", line 439, in increment raise MaxRetryError(_pool, url, error or ResponseError(cause)) urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='www.nlotto.co.kr', port=443): Max retries exceeded with url: /common.do?method=getLottoNumber&drwNo=1 (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1108)'))) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:/Users/my/Desktop/lotto/lotto_2.py", line 24, in old_lotto_numbers.append(get_lotto_numbers(i)) File "C:/Users/my/Desktop/lotto/lotto_2.py", line 11, in get_lotto_numbers request = requests.get('www.nlotto.co.kr/common.do', File "C:\Users\my\Desktop\lotto\venv\lib\site-packages equests\api.py", line 76, in get return request('get', url, params=params, **kwargs) File "C:\Users\my\Desktop\lotto\venv\lib\site-packages equests\api.py", line 61, in request return session.request(method=method, url=url, **kwargs) File "C:\Users\my\Desktop\lotto\venv\lib\site-packages equests\sessions.py", line 530, in request resp = self.send(prep, **send_kwargs) File "C:\Users\my\Desktop\lotto\venv\lib\site-packages equests\sessions.py", line 643, in send r = adapter.send(request, **kwargs) File "C:\Users\my\Desktop\lotto\venv\lib\site-packages equests\adapters.py", line 514, in send raise SSLError(e, request=request) requests.exceptions.SSLError: HTTPSConnectionPool(host='www.nlotto.co.kr', port=443): Max retries exceeded with url: /common.do?method=getLottoNumber&drwNo=1 (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1108)'))) Process finished with exit code 1 이런 오류메세지가 뜨네요 수정한건없는데 왜이럴까요??
죄송한데요. 에러가 났는데 이제 나옵니다. 감사합니다. 띄어쓰기가 문제였네요.;; 그리고 방법을 1~45번까지 번호가 있다. 이 번호를 통에 넣어 하나씩 나오게해서 6개를 뽐는데 이전에는 이렇게 나왔다.(1회~지금까지) (단순랜덤은 중복 수 제거가 필요 하겠지만 이것은 해당 없음) 이것을 학습하고 나서 다음회에 나올 (인공지능/ai) 6개의 수를 뽐아라 뭐 이런식으로 코딩 가능할까요. 또 패턴으로 표현 가능할런지요 수고하세요
네 저도 그건 그렇게 생각합니다. 매주 리셋되니.... 제가 매주 로또사는데 그냥 산 것보다는 인공지능이란 것이 있으니 혹시나 적용해서 해 보자는 것입니다. 선생님은 지금까지 나온 것 중에 중복제거 외엔 단순 랜덤이잖아요. 제가 생각한 것은 지금까지 나온 숫자 1~~900회 이다 이걸 토대로 다음 숫자 뽐는 것입니다. 뽐을때 숫자 1~45선언하지 않고 6개를 뽐아라도 선언하지 않고 그냥 지금까지 나온것을 토대로 뽐아라....안되겠죠 암튼 감사하고 잘 봤습니다.수고하세요.^^
현재 동행복권에서 제공하는 사이트 URL이 바뀌었습니다.
www.nlotto.co.kr/common.do를
www.dhlottery.co.kr/common.do로 바꾸시면 됩니다.
사이트 url이 바뀐것을 자동으로 반영해줄수는 없을까요? 각종 사이트에서 필요한 정보만 끌어모으려고 하는데 바뀔때마다 하나하나 관리하기가 어려울 것 같아서요
아 기대하고 봤습니다. ㅋㅋ마지막에 웃겼으나, 슬펐습니다 ㅠ
기본 문법과 웹데이터 불러오는 방법을 공부하고 어떻게 활용하는지 궁금했는데 이렇게 사용하는 방법이 있었군요. 중간 중간 넘어가는 과정이 조금 이해가 안 가는 부분이 있기는 하지만 그건 제가 다시 찾아보고 공부해봐야겠네요
잘 보고 갑니다. 더 많은 파이썬의 활용 부분 부탁드립니다
잘 봤습니다. 깔끔하고 훌륭하네요. 잘 작동되고요.
그런데 보너스 번호까지 받으려면 어떻게 하나요? (7개의 숫자 배열)
비디오 보고 그대로 했는데 잘 되네요. ^^*
이거 보고 프로그램 만들어서 로또 한번 뽑아봤어요 ㅋㅋㅋ토요일 기대됩니다
안녕하세요! 잘 보고 갑니다^^ 혹시 파이참 Theme은 어떤것 쓰시나요?? 좀 어두운 버전으로 하려는데 Darcula는 텍스트 가독성이 너무 안좋네요 ㅠ 추천해주시면 감사드리겠습니다!
Dracula 추천드립니다! 저는 iTerm2 Pycharm VSCode 모두 드라큘라 Theme을 사용합니다.
33번줄 if numbers not in old_lotto_numbers or numbers not in my_lotto_numbers: 에서
or가 아니라 and여야 하지 않나요?
or는 둘중에 하나만 참이면 되니 뒷조건(my_lotto_numbers)에 없으면 기존 당첨번호에 있더라도 못 걸러 내지낳아요.
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ마지막에 낙첨 왜케 웃기지
sad..
파이썬 입문자 입니다. 파이썬 3.8로 똑 같이 실행 하려고 하니 많은 에러가 발생 하는데 파이썬 3.8에서는 똑 같이 하면 않되는 건가요?
3.8에서 호환되지 않을만한 부분은 없어서 아마 버전 문제는 아닐 것 같습니다. 다만 입문자시면 3.8버전은 호환이 안되는 라이브러리가 많아 3.5~3.7버전을 추천드립니다.
@@arkaycoding 감사합니다~
0-9 중에 숫자 하나를 뽑는 복권이라면 로또처럼 만들수 있을까요? 하루에 1440번 추첨합니다.
강의 첫부분인 832회차 번호만 print하려고 먼저 모듈을 import 한뒤 get_lotto_numbers함수까지는 정상적으로 실행이 됐지만
print(get_lotto_numbers(832))라고 입력하니 ConnectionError: HTTPSConnectionPool(host='www.www.dhlottery.co.kr', port=443): Max retries exceeded with url: /common.do?method=getLottoNumber&drwNo=832 (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 11001] getaddrinfo failed')) 라는 오류가 떴는데 어떻게 해야하죠?
짧은 시간 안에 너무 많은 요청을 해서 오는 오류로 기다렸다가 다시 요청을 하셔야합니다.
현재 동행복권에서 제공하는 사이트 URL이 바뀌었습니다.
www.nlotto.co.kr/common.do를
www.dhlottery.co.kr/common.do로 바꾸시면 됩니다.
보너스는 어떻게 처리하셨어요
import requests부분에서 제대로 임포트를 못하는데 어떻게 해결할 수 있을까요?
Terminal을 열어서 pip install requests 명령어를 실행해보세요.
요거 코드 주실수 있나요?
좀 봐주세요. 영 초보라...;;
import requests
...........................................
.f = open("old.txt", 'w')
for nums in old_lotto_numbers:
f.write(str(sorted(nums)) + "
")
next
print(sorted(numbers))
f.close()
print(sorted(numbers))
1개 나오는데 5개 또는 그 이상을 뽐으려면 어케 하는지요....
이 부분은 이 코드 위에 while문에 있는 숫자를 변경해주시면 됩니다.
예 : while len(my_lotto_numbers) < 5 라고 하면 5개의 세트가 나옵니다.
감사합니다.
안녕하세요 오늘도 여전히 낙첨이지만 또 돌려보려고 했는데
C:\Users\my\Desktop\lotto\venv\Scripts\python.exe C:/Users/my/Desktop/lotto/lotto_2.py
Traceback (most recent call last):
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\connectionpool.py", line 670, in urlopen
httplib_response = self._make_request(
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\connectionpool.py", line 381, in _make_request
self._validate_conn(conn)
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\connectionpool.py", line 976, in _validate_conn
conn.connect()
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\connection.py", line 361, in connect
self.sock = ssl_wrap_socket(
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\util\ssl_.py", line 377, in ssl_wrap_socket
return context.wrap_socket(sock, server_hostname=server_hostname)
File "C:\Users\my\AppData\Local\Programs\Python\Python38-32\lib\ssl.py", line 500, in wrap_socket
return self.sslsocket_class._create(
File "C:\Users\my\AppData\Local\Programs\Python\Python38-32\lib\ssl.py", line 1040, in _create
self.do_handshake()
File "C:\Users\my\AppData\Local\Programs\Python\Python38-32\lib\ssl.py", line 1309, in do_handshake
self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1108)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages
equests\adapters.py", line 439, in send
resp = conn.urlopen(
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\connectionpool.py", line 724, in urlopen
retries = retries.increment(
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages\urllib3\util
etry.py", line 439, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='www.nlotto.co.kr', port=443): Max retries exceeded with url: /common.do?method=getLottoNumber&drwNo=1 (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1108)')))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:/Users/my/Desktop/lotto/lotto_2.py", line 24, in
old_lotto_numbers.append(get_lotto_numbers(i))
File "C:/Users/my/Desktop/lotto/lotto_2.py", line 11, in get_lotto_numbers
request = requests.get('www.nlotto.co.kr/common.do',
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages
equests\api.py", line 76, in get
return request('get', url, params=params, **kwargs)
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages
equests\api.py", line 61, in request
return session.request(method=method, url=url, **kwargs)
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages
equests\sessions.py", line 530, in request
resp = self.send(prep, **send_kwargs)
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages
equests\sessions.py", line 643, in send
r = adapter.send(request, **kwargs)
File "C:\Users\my\Desktop\lotto\venv\lib\site-packages
equests\adapters.py", line 514, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='www.nlotto.co.kr', port=443): Max retries exceeded with url: /common.do?method=getLottoNumber&drwNo=1 (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1108)')))
Process finished with exit code 1
이런 오류메세지가 뜨네요 수정한건없는데 왜이럴까요??
NameError: name 'params' is not defined ;;
Prams 를 처음 정의했던 부분 보시면 틀린거 발견하실듯 해요
@@Earthscienceteacher 해결했어요..줄맞추는거에도
영향이 있네요. 감사합니다.^^
이 메일 좀 알려 주실수 있으신가요? 개별 문의 드릴게 있습니다
arkay.onyx@gmail.com 입니다.
코딩 말고 결과만 보고 싶으신 분은 7:05 부터 보시면 됩니다.
혹시 리턴 에러가 나는데.. 왜구러죠..?̊̈
똑같은 코드로 진행하셨는데 에러가 나시나요?
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
안되네요, 설명도 너무 생략이 많고 초보자는 이영상 보지마세요 열받네
설명이 미흡했다면 죄송합니다.
파이썬 입문자면 코드이해 잘 안될수도 있다고 말했는데도 이런 기분나쁜 댓글 다는 사람들이 있넹,, 유투브 하기 힘들다 이래도 욕먹고 저래도 욕먹고
@@멜희-m7e 넌뭐냐
죄송한데요. 에러가 났는데 이제 나옵니다. 감사합니다. 띄어쓰기가 문제였네요.;;
그리고 방법을
1~45번까지 번호가 있다.
이 번호를 통에 넣어 하나씩 나오게해서 6개를 뽐는데 이전에는 이렇게 나왔다.(1회~지금까지)
(단순랜덤은 중복 수 제거가 필요 하겠지만 이것은 해당 없음)
이것을 학습하고 나서 다음회에 나올 (인공지능/ai) 6개의 수를 뽐아라
뭐 이런식으로 코딩 가능할까요.
또 패턴으로 표현 가능할런지요
수고하세요
그 방법은 유의미한 방법이 아닙니다. 도박사에 법칙에 따라 과거의 숫자가 다음 회차의 번호에 영향을 주지 않기 때문이죠. 사실 제 영상에서 사용한 방법 역시 유의미한 방법은 아니고 코딩을 하는 방법을 보여주는 소스로 로또 번호 분석을 사용한 것일 뿐 입니다.
네 저도 그건 그렇게 생각합니다. 매주 리셋되니.... 제가 매주 로또사는데 그냥 산 것보다는 인공지능이란 것이 있으니 혹시나 적용해서 해 보자는 것입니다.
선생님은 지금까지 나온 것 중에 중복제거 외엔 단순 랜덤이잖아요. 제가 생각한 것은 지금까지 나온 숫자 1~~900회 이다 이걸 토대로 다음 숫자 뽐는 것입니다.
뽐을때 숫자 1~45선언하지 않고 6개를 뽐아라도 선언하지 않고 그냥 지금까지 나온것을 토대로 뽐아라....안되겠죠
암튼 감사하고 잘 봤습니다.수고하세요.^^
각 회차에 따른 데이터의 인과관계가 없으므로 이는 인공지능 분석이 불가능합니다.
넵 감사합니다.