무작위 Wikipedia 기사 리더 | Rookie Week of Python Day 05

인터넷에서 지루해하고 지루함을 없애기 위해 Wikipedia 기사를 읽은 모든 사람은 아마도 임의의 기사 생성기 링크를 사용했을 것입니다.
https://en.wikipedia.org/wiki/Special:Random
오늘 우리는 이 링크를 사용하여 Wikipedia에서 임의의 기사를 검색하고 기사를 읽을지 또는 다른 임의의 기사를 선택할지 선택할 수 있는 y/n 프롬프트를 제공하는 Python 스크립트를 작성합니다. 다른 기사를 다시 검색하기 위해 링크를 새로 고칠 수 없으므로 루프를 사용해야 합니다.

무작위 위키 기사 생성기



먼저 다음과 같이 쉽게 수행할 수 있는 두 가지 필수 구성 요소를 pip 설치해야 합니다.
pip install beautifulsoup4pip install requests
이제 위의 설치 및 추가webbrowser 모듈을 가져오려면

import requests
from bs4 import BeautifulSoup
import webbrowser

while 루프와 세 개의 변수를 선언합니다.
  • url - 임의 위키 링크를 포함합니다
  • .
  • 수프 - html 콘텐츠를 구문 분석하는 데 사용됨
  • 제목 - 구문 분석된 데이터에서 값 가져오기firstheading

  • while True:
        url = requests.get("https://en.wikipedia.org/wiki/Special:Random")
        soup = BeautifulSoup(url.content, "html.parser")
        title = soup.find(class_="firstHeading").text
    


    사용자에게 y/n 옵션을 묻는 메시지를 표시하는 print 문 및 input() 문. 잘못된 입력을 방지하기 위해 대문자 입력을 소문자로 변환하는 .lower() 함수를 사용하여 명령문을 추가합니다.

    while True:
        url = requests.get("https://en.wikipedia.org/wiki/Special:Random")
        soup = BeautifulSoup(url.content, "html.parser")
        title = soup.find(class_="firstHeading").text
    
        print(f"{title} \nDo you want to read this article? (Y/N)")
        ans = input("").lower()
    


    사용자 입력에 따라 다른 기능을 수행하는 조건문을 작성합니다. 실행webbrowser.open()을 실행하여 선택한 링크가 있는 브라우저 창을 엽니다(프로그램은 이 목적을 위해 기본 브라우저를 사용함).

    if ans == "y":
            url = "https://en.wikipedia.org/wiki/%s" % title
            webbrowser.open(url)
            break
        elif ans == "n":
            print("Don't worry. Fetching a new article for you!")
            continue
        else:
            print("Invalid Command!")
            break
    


    산출





    읽어 주셔서 감사합니다. GitHub 저장소에서 코드here를 얻을 수 있습니다.

    좋은 웹페이지 즐겨찾기