728x90
728x90
웹 크롤링 - 웹상의 문서, 정보를 모은다.
AC00 -> 이건 16진수 이다.
이제 초성퀴즈를 만들어 보자!
import requests
from bs4 import BeautifulSoup # 원하는 정보 추출하는 용!
import random
consonants = {'ㄱ' : 44032, 'ㄴ':45208, 'ㄷ':45796, 'ㄹ' : 46972, 'ㅁ':47560, 'ㅂ' : 48148} # 유니코드를 10진수로
life = 3
score = 0
ls = [] # 단어 리스트 중복 방지
# 자음을 랜덤하게 뽑아야된다.
while life > 0:
consonants1 = list(consonants.keys())[random.randint(0,len(consonants)-1)]
consonants2 = list(consonants.keys())[random.randint(0,len(consonants)-1)]
print("life :", life, "\tscofe :",score)
print(f"{consonants1}{consonants2}: ",end = '') # 엔터 없이 끝날 수 있도록
# 이제 입력을 받아야 하는데 두글자를 받아야 하낟.
user = input()
if len(user )== 2:
# ㄱㄷ : 구두 -> 맞는지 확인하려면 자음을 구해줘야 한다.
user1 = ord(user[0]) - ((ord(user[0]) - 520)%588)#아스키 코드값을 수해주는 함수이다.
user2 = ord(user[1]) - ((ord(user[1]) - 520)%588)
if consonants[consonants1] == user1 and consonants[consonants2] == user2 :
# 이제 웹 크롤링이 필요하다!
r = requests.get(f'https://dic.daum.net/search.do?q={user}')
soup = BeautifulSoup(r.text,"lxml")
# 사용한 적 있는 단어있는지 확인
if not user in ls :
if len(soup.select(".txt_emph1")) > 0 and soup.select(".txt_emph1")[0].text.strip() == user:
score +=100
ls.append(user)
else:
print("error:유효하지 않는 단어입니다.")
life -=1
else:
print("error:이미 사용했던 단어입니다.")
life -=1
else:
print("error : 글자 수가 맞지 않습니다.")
life -=1
else:
print("error : 글자 수가 맞지 않습니다.")
life -=1
728x90
'개발 > 파이썬 업무 자동화' 카테고리의 다른 글
파이썬 - 웹 정보 수집하기 (0) | 2024.02.23 |
---|---|
파이썬 = 웹 페이지 다운로드 하기 (0) | 2024.02.23 |
파이썬 - 웹 자료 수집하기 (0) | 2024.02.21 |
실습 - 키보드 자동화 (1) | 2024.02.21 |
실습 - 화면(이미지) 좌표 찾기 (0) | 2024.02.20 |