📢 Python 유튜브 영상 제목 크롤러 만들기
🔍 프로그램 개요
이 프로그램은 특정 유튜브 영상의 제목을 가져오는 기능을 합니다. 웹 크롤링 기법을 활용하여 유튜브 URL에서 자동으로 정보를 수집할 수 있습니다.
- 유튜브 영상 데이터 분석
- 유튜브 검색 자동화
- 영상 제목을 수집하여 데이터 저장
⚙ 개발 환경 설정
🖥 Python 설치 방법 🖥 CMD 창 실행 및 폴더 이동
→ 아래 명령어로 필요한 라이브러리를 설치하세요.
pip install requests beautifulsoup4
* 몇 번 크롤러를 만들어서 이제는 설치 안하셔도 되겠지만, 혹시 모르니 체크해주세요.
🛠 프로그램 만들기 - Step-by-Step
1️⃣ 유튜브 HTML 데이터 가져오기
유튜브 페이지의 HTML을 가져오기 위해 requests
라이브러리를 사용합니다.
import requests
url = "https://www.youtube.com/watch?v=영상ID" # 원하는 유튜브 영상 URL 입력
response = requests.get(url)
print(response.text) # HTML 내용 확인
→ 코드는 매번 잘 따라하고 계시죠? 뭐 복/붙여넣기도 빠르게~ 좋아요🙄
! 이제 눈치 채신분들이 많으시겠지만 저렇게 ChatGPT나 AI가 알려주는 코드는 잘 살펴보세요~
유튜브 영상ID 하나 가져오셔야 해요.
결과는...뭐라고 할까요? 복잡....
2️⃣ 제목 데이터 추출하기
BeautifulSoup
을 사용하여 HTML에서 제목을 추출합니다.
from bs4 import BeautifulSoup
soup = BeautifulSoup(response.text, "html.parser")
title = soup.find("title").text
print("유튜브 영상 제목:", title)
→ HTML 코드에서 원하는 영상의 제목을 가져오려고 해요.
아래처럼 5번째 줄 출력은 주석(#)으로 막았어요.
위에 복잡한 코드 올라오는거 보이시죠? 현재 결과만 확인하고 싶어요.
→ 제목을 가져오네요. 저 영상의 노래를 들으면서 코딩(?) 따라하기 중이죠~ 👍
💾 전체 코드 제공
import requests
from bs4 import BeautifulSoup
# 유튜브 영상 URL 입력
url = "https://www.youtube.com/watch?v=영상ID"
# HTML 가져오기
response = requests.get(url)
# BeautifulSoup을 사용하여 제목 추출
soup = BeautifulSoup(response.text, "html.parser")
title = soup.find("title").text
# 결과 출력
print("유튜브 영상 제목:", title)
→ 아래처럼 원하는 영상 ID를 꼭 입력해주세요.
→ 최종 결과, 같은 영상이라 결과는 같네요.
🚀 실행 방법 및 결과
위 코드를 실행하면 아래와 같은 결과가 나옵니다.
유튜브 영상 제목: [제목 예시] 파이썬 크롤링 배우기!
❓ 초보자를 위한 FAQ
A. 유튜브는 보안이 강화되어 requests만으로 크롤링이 어렵습니다.
👉 해결법:
selenium
을 사용하여 크롤링할 수 있습니다.A. 터미널의 기본 인코딩 문제일 수 있습니다.
👉 해결법:
print(title.encode('utf-8').decode())
추가!A. 리스트에 여러 개의 URL을 넣고 for문으로 반복하면 됩니다.
📌 맺음말 & 발전 과제
1️⃣ Selenium을 사용하여 크롤링하기
2️⃣ 여러 개의 영상 제목을 한 번에 가져오기
3️⃣ GUI 프로그램으로 발전시키기