수동 복사 붙여넣기에서 완전히 해방되려면 파이썬의 표준 수집 도구인 BeautifulSoup(뷰티풀수프)를 입양해야 합니다. BeautifulSoup은 서버에서 수신한 원시 HTML 소스를 파이썬이 해석하기 좋은 정갈한 객체로 포맷해 줍니다. 가장 기본이 되는 정적 크롤링 스크립트 작성법을 공유합니다.
본문 상단 광고 슬롯 (구글 애드센스 반응형 디스플레이 광고)
1. 필수 설치 및 라이브러리 임포트
파이썬 가상환경에서 `pip` 명령어로 통신 라이브러리(`requests`)와 파서(`beautifulsoup4`)를 내려받습니다.
pip install requests beautifulsoup4
2. 실전 파이썬 정적 스크래핑 소스 코드
원하는 요소의 제목 데이터를 파싱해 출력하는 예제 코드입니다.
import requests
from bs4 import BeautifulSoup
url = "https://example-blog.com/posts"
# 타겟 서버에 웹 브라우저 접속인 것처럼 위장하는 헤더 탑재
headers = {"User-Agent": "Mozilla/5.0"}
response = requests.get(url, headers=headers)
if response.status_code == 200:
soup = BeautifulSoup(response.text, "html.parser")
# CSS 선택자로 포스팅 타이틀 노드 리스트를 일괄 획득
titles = soup.select(".post-card__title")
for title in titles:
# 노드 내부의 순수 텍스트만 추출하고 여백 제거
print(title.get_text().strip())
"BeautifulSoup은 이미 완성되어 전달된 HTML 소스를 파싱하는 도구입니다. 만약 서버에 들어오는 정보가 자바스크립트로 뒤늦게 동적 렌더링된다면 반응하지 않으므로 주의가 필요합니다."
본문 중간 광고 슬롯 (구글 애드센스 인프리미엄 콘텐츠 광고)
3. find/find_all vs select/select_one
데이터 대상을 지정할 때, `find_all('div', class_='title')`처럼 BeautifulSoup 고유 메서드를 쓸 수도 있지만, CSS 디자인 스타일링 문법과 100% 결합되는 `select('.title')`을 기용하는 것이 마크업 구조 해석 면에서 가독성 높고 유지보수에 유리합니다.
4. 요약: 자동화 데이터 수집의 기본기
requests와 BeautifulSoup 조합을 활용해 실시간 뉴스 기사 헤드라인이나 주식 종목 시세 정보를 로드하는 파이썬 크롤링 자동화 엔진을 완성해 보시기 바랍니다.
본문 하단 광고 슬롯 (구글 애드센스 일치하는 콘텐츠/디스플레이 광고)