๐Ÿ ๊ธฐํƒ€/์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ_FE

์ง€๋‹ˆ๋ฎค์ง ํฌ๋กค๋งํ•˜๊ธฐ

Dhey 2021. 12. 27. 09:34
๋ฐ˜์‘ํ˜•

์ด๋ฒˆ ์ฃผ์ฐจ๋Š” ์ง€๋‹ˆ๋ฎค์ง์˜ 1~50์œ„ ๊ณก์„ ์ˆœ์œ„ / ๊ณก ์ œ๋ชฉ / ๊ฐ€์ˆ˜ ๋ฅผ ์Šคํฌ๋ž˜ํ•‘ํ•˜์˜€๋‹ค.

์ง€๋‹ˆ์ฐจํŠธ

 

๊ฒฐ๊ณผ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด 

 

import requests
from bs4 import BeautifulSoup

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=M&rtm=N&ymd=20211101',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     //๊ฐ€์ˆ˜

chart_list = soup.select('#body-content > div.newest-list > div > table > tbody > tr')

for chart in chart_list:
    title = chart.select_one('td.info > a.title.ellipsis').text.strip()
    rank = chart.select_one('td.number').text[0:2].strip()
    artist = chart.select_one('td.info > a.artist.ellipsis').text
    print(rank, title, artist)

 

 

๊ฐ„๋‹จํžˆ ์ฝ”๋“œ ๋ถ„์„ํ•˜๊ธฐ!

1. title์—์„œ ์‚ฌ์šฉ๋œ strip() ํ•จ์ˆ˜

  : strip() ํ•จ์ˆ˜๋Š” ๋ฌธ์ž์—ด์˜ ์–‘ ๋์— ์žˆ๋Š” ๊ณต๋ฐฑ์„ ์ œ๊ฑฐํ•ด์ฃผ๊ณ , ๊ณต๋ฐฑ์„ ์ œ๊ฑฐํ•œ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•ด์ค€๋‹ค.

 

2. rank์—์„œ ์‚ฌ์šฉ๋œ a[0:2]

  : a[0:2]๋Š” ์Šฌ๋ผ์ด์‹ฑ(Slicing) ๊ธฐ๋ฒ•์œผ๋กœ, a๋ฌธ์ž์—ด์—์„œ ์ž๋ฆฌ๋ฒˆํ˜ธ 0๋ถ€ํ„ฐ 2๋ฒˆ๊นŒ์ง€์˜ ๋ฌธ์ž๋ฅผ ๋ฝ‘์•„๋‚ธ๋‹ค๋Š” ๋œป์ด๋‹ค.

   (์—ฌ๊ธฐ์„œ ๋๋ฒˆํ˜ธ๋Š” ํฌํ•จ๋˜์ง€ ์•Š๋Š”๋‹ค. ๋”ฐ๋ผ์„œ ์ถœ๋ ฅ๋˜๋Š” ๋ฌธ์ž์—ด์€ 0,1๋ฒˆ์งธ์˜ ๋ฌธ์ž์—ด๊นŒ์ง€ ์ถœ๋ ฅ!)

 

3. ๋ชจ๋“  ๊ณณ์— ์‚ฌ์šฉ๋œ .text

  : .text()๋Š” ํƒœ๊ทธ์•ˆ์˜ ํ…์ŠคํŠธ๋ฅผ ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

 

 

โ–ผ ํฌ๋กค๋ง ๊ฒฐ๊ณผ๋ฌผ

ํฌ๋กค๋ง ๊ฒฐ๊ณผ ์ฝ”๋“œ์ฐฝ

 

 

๊ฐ„๋‹จํ•œ๋“ฏ ํ•˜๋ฉด์„œ๋„ strip()ํ•จ์ˆ˜์™€ ์Šฌ๋ผ์ด์‹ฑ์„ ์–ด๋А ์œ„์น˜์— ๋„ฃ์–ด์•ผ ํ• ์ง€ ๊ณ ๋ฏผ์ด ๋งŽ์ด๋˜์—ˆ๊ณ , ์—ฌ๊ธฐ์ €๊ธฐ ๋„ฃ์–ด๋ณด๋ฉด์„œ ์˜ค๋ฅ˜๋ฅผ ๊ฑฐ์น˜๋ฉฐ ๊ฒฐ๊ณผ๊ฐ’์„ ์–ป๊ฒŒ ๋˜์—ˆ๋‹ค. ์•„์ง์€ ์กฐ๊ธˆ ๋” ์ต์ˆ™ํ•ด์ ธ์•ผ ํ•  ๊ฒƒ ๊ฐ™๋‹ค.

๋ฐ˜์‘ํ˜•