1. Beautifulsoup 외부 라이브러리 설치

 

원하는 태그를 쉽게 가지고 올 수 있는 라이브러리

 

 

2. 사용법

만약 저 노란색 칠한 부분을 따오고 싶다? 

 

 

크롬 개발자도구 F12 켜서 요소 선택 누른다음에

원하는 부분에 마우스 갖다 대면 태그 네임이 뭔지 나타난다 strong html 태그에 title css 

한번 직접 가져와보자

 

 

import requests
from bs4 import BeautifulSoup

response = requests.get("https://sports.news.naver.com/index", verify=False)
rating_page = response.text

soup = BeautifulSoup(rating_page, 'html.parser')
print(soup.select('strong.title'))

하나의 리스트 안에 원하는 부분이긴 하지만 가공되지 않은 전체 값이 담긴다

 

soup.select() 는 괄호 안에 css 선택자를 넣으면 선택자에 해당하는 값을 리스트에 담는다

 

 

보기 좀 그러니 하나씩 반복문 돌려서 결과 봐보자

import requests
from bs4 import BeautifulSoup

response = requests.get("https://sports.news.naver.com/index", verify=False)
rating_page = response.text

soup = BeautifulSoup(rating_page, 'html.parser')
title = soup.select('strong.title')

for tag in title:
    print(tag.get_text())

 

이걸 리스트 안에 하나씩 차곡차곡 넣어보자

import requests
from bs4 import BeautifulSoup

response = requests.get("https://sports.news.naver.com/index", verify=False)
rating_page = response.text

soup = BeautifulSoup(rating_page, 'html.parser')
title = soup.select('strong.title')

titleList = []

for tag in title:
    titleList.append(tag.get_text())

print(titleList)

구분되어 잘 들어갔다

 

 

 

3. 1등 결과물 추출해보자

맨 첫번 째 헤더 tr 은 제외해야 하니 1번째 row 부터 시작해야한다 (0은 헤더)

그 안에 td 들이 있고

import requests
from bs4 import BeautifulSoup

response = requests.get("https://keyzard.org/realtimekeyword", verify=False)
rating_page = response.text

soup = BeautifulSoup(rating_page, 'html.parser')

tr_tag = soup.select('tr')[1]
td_tag = tr_tag.select('td')

for tag in td_tag:
    print(tag.get_text())

 

반응형


글이 도움이 되셨다면 공감과 광고 클릭 한번 부탁드립니다! 💕
감사합니다 ✨