웹 스크래핑은 웹에서 데이터를 효율적으로 수집해야 하는 개발자에게 필수적인 기술입니다. 이 튜토리얼에서는 HTML 및 XML 구문 분석을 위한 강력한 라이브러리인 BeautifulSoup을 사용하여 뉴스 웹사이트에서 기사 제목을 스크랩하는 간단한 Python 스크립트를 살펴보겠습니다.
이 튜토리얼이 끝나면 단 몇 줄의 코드만으로 웹페이지에서 기사 제목을 추출하고 표시하는 스크립트를 갖게 됩니다!
코드를 살펴보기 전에 시스템에 Python이 설치되어 있는지 확인하세요. 다음 라이브러리도 필요합니다:
pip를 사용하여 다음 라이브러리를 설치할 수 있습니다.
pip install requests beautifulsoup4
BBC News와 같은 웹사이트의 최신 뉴스를 추적하고 싶다고 가정해 보겠습니다. 사이트를 수동으로 방문하는 대신 Python을 사용하여 이 작업을 자동화하고 분석 또는 표시를 위해 기사 제목을 스크랩할 수 있습니다.
다음은 기사 제목을 스크랩하는 전체 Python 스크립트입니다.
import requests from bs4 import BeautifulSoup def fetch_article_titles(url): try: # Step 1: Send an HTTP GET request to fetch the webpage response = requests.get(url) response.raise_for_status() # Ensure the request was successful # Step 2: Parse the webpage content with BeautifulSoup soup = BeautifulSoup(response.text, "html.parser") # Step 3: Use a CSS selector to find all article titles titles = [] for heading in soup.select("h3"): # Most news sites use <h3> tags for article titles titles.append(heading.get_text(strip=True)) # Extract and clean the text return titles except requests.exceptions.RequestException as e: print(f"Error fetching the webpage: {e}") return [] except Exception as e: print(f"Error during parsing: {e}") return [] # Example usage: Fetching titles from BBC News url = "https://www.bbc.com/news" titles = fetch_article_titles(url) # Print the article titles print("Latest Article Titles:") for i, title in enumerate(titles, 1): print(f"{i}. {title}")
요청하기:
콘텐츠 분석:
제목 추출:
스크립트를 실행하면 다음과 같은 깔끔한 기사 제목 목록을 얻을 수 있습니다.
Latest Article Titles: 1. Israel-Gaza conflict: Latest updates 2. Global markets fall amid economic uncertainty 3. AI advancements raise ethical questions 4. Football: Premier League results ...
이 스크립트를 수정하여 다른 유형의 콘텐츠를 스크랩하거나 다른 웹사이트를 타겟팅할 수 있습니다. 시도해 볼 수 있는 몇 가지 조정 방법은 다음과 같습니다.
CSS 선택기 변경:
대상 웹사이트의 구조가 다른 경우 "h3"를 보다 구체적인 선택기(예: "div.article-title")로 바꾸세요.
추가 데이터 스크랩:
관련 HTML 요소 및 속성을 선택하여 URL, 발행일 또는 요약을 추출하세요.
웹사이트 서비스 약관을 존중하세요:
항상 웹사이트의 robots.txt 파일이나 이용 약관을 확인하여 스크래핑이 허용되는지 확인하세요.
요청 속도 제한:
time.sleep 메소드를 사용하여 요청 사이에 지연을 추가하여 서버 과부하를 방지하세요.
변경사항을 적절하게 처리:
웹사이트는 구조를 변경하여 스크립트를 손상시킬 수 있습니다. 항상 코드를 디버깅하고 업데이트할 준비를 하세요.
단 몇 줄의 Python 코드만으로 뉴스 웹사이트에서 기사 제목을 스크랩할 수 있는 간단하면서도 강력한 스크립트를 구축했습니다. BeautifulSoup을 사용하면 필요한 데이터를 쉽게 탐색하고 추출할 수 있으며, 요청은 HTTP 상호작용을 처리합니다.
웹 스크래핑은 동향 모니터링부터 데이터 수집 자동화까지 다양한 기회를 열어줄 수 있습니다. 책임감 있게 긁어내는 것만 기억하세요!
위 내용은 단순화된 웹 스크래핑: BeautifulSoup을 사용하여 기사 제목 추출의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!