본문 바로가기
프로그래밍 언어/Python

스크래핑

by 진진리 2023. 9. 14.
728x90

스크래핑

  • 웹 페이지의 특정 부분에서 필요한 정보를 추출하는 작업
  • HTML 코드를 컴퓨터가 이해할 수 있는 방식으로 읽어오는 것

 

  • 스크래핑 예시
import requests
from bs4 import BeautifulSoup

URL = "https://movie.daum.net/ranking/reservation"
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get(URL, headers=headers)
soup = BeautifulSoup(data.text, 'html.parser')
title = soup.select_one("#mainContent > div > div.box_ranking > ol > li:nth-child(1) > div > div.thumb_cont > strong > a").text
print(title)
  1. 원하는 웹 페이지 접속 후 원하는 부분에서 ‘검사
  2. Copy → Copy selector로 선택자를 복사할 수 있음

  • 선택자를 사용하는 방법

soup.select(‘태그명’)

soup.select(’클래스명’)

soup.select(’#아이디명’)

soup.select(’상위태그명 > 하위태그명 > 하위태그명’)

soup.select(’상위태그명.클래스명 > 하위태그명.클래스명’)

 

태그와 속성값으로 찾는 방법: soup.select(’태그명[속성=”값”]’)

한 개만 가져오고 싶은 경우: soup.select_one(’위와 동일’)


  • 태그 안의 텍스트를 찍고 싶을 땐 : 태그.text
  • 태그 안의 속성을 찍고 싶을 땐 : 태그[’속성’]

 

'프로그래밍 언어 > Python' 카테고리의 다른 글

반복문  (0) 2023.09.15
조건문  (0) 2023.09.15
연산자  (0) 2023.09.15
변수  (0) 2023.09.15
기초(input(), print(), 주석)  (0) 2023.09.15