내일배움단 개발일지
11. 3주차 - 숙제
새싹_v
2022. 8. 20. 10:00
728x90
최신 지니뮤직 1 ~ 50위 곡을 스크래핑해보기
import requests
from bs4 import BeautifulSoup
# 타겟 URL을 읽어서 HTML를 받아오고,
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('https://www.genie.co.kr/chart/top200?ditc=D&rtm=Y',headers=headers)
soup = BeautifulSoup(data.text, 'html.parser')
#body-content > div.newest-list > div > table > tbody > tr:nth-child(1) > td.number #랭크
#body-content > div.newest-list > div > table > tbody > tr:nth-child(1) > td.info > a.title.ellipsis #제목
#body-content > div.newest-list > div > table > tbody > tr:nth-child(1) > td.info > a.artist.ellipsis #가수
genie = soup.select('#body-content > div.newest-list > div > table > tbody > tr')
for Music in genie:
title = Music.select_one('td.info > a.title.ellipsis').text.strip() #strip() 공백제거
rank = Music.select_one('td.number').text[0:2].strip() #앞에서 두 글자만 끊기 text[0:2] 사용
name = Music.select_one('td.info > a.artist.ellipsis').text
print(rank, title, name)
결과!
위에 글 내용은 오류 사항이 존재할 수 있습니다!
수정 사항이 있을 시 알려주시면 감사하겠습니다.
728x90