반응형
bugs 페이지에서 데이터를 크롤링하여 엑셀 파일로 저장 해 볼 것이다.
https://music.bugs.co.kr/chart
위의 페이지를 사용하여 연습을 해보자.
먼저 라이브러리를 호출 해 준다.
from selenium import webdriver
from bs4 import BeautifulSoup
import pandas as pd
이후 페이지를 가져오자
driver = webdriver.Chrome()
url = 'https://music.bugs.co.kr/chart'
driver.get(url)
html = driver.page_source
soup = BeautifulSoup(html, 'html.parser')
driver.close()
BeautifulSoup를 이용하여 분석을 해주자.
랭크를 1 부터 증가시키며 title, singer를 저장한다.
song_data = []
rank = 1
songs = soup.select('table.byChart > tbody > tr')
for song in songs:
title = song.select('p.title > a')[0].text
singer = song.select('p.artist > a')[0].text
song_data.append(['Bugs', rank, title, singer])
rank += 1
데이터 프레임으로 만들어서 엑셀 파일로 저장 해 보자.
columns = ['서비스', '순위', '타이틀', '가수']
pd_data = pd.DataFrame(song_data, columns = columns)
pd_data.to_excel('./bugs.xlsx', index = False)
아래와 같이 나온나면 저장이 잘 된 것이다.
'Python' 카테고리의 다른 글
[Python] 공공 API 데이터를 받아서 사용 해 보자. (feat. JSON AND XML) (0) | 2024.08.02 |
---|---|
[Python] 실제 사이트 크롤링을 해보자. (0) | 2024.07.31 |
[Python] 크롤링 with selenium (id, class, 태그 명으로 찾기) (0) | 2024.07.31 |
[Python] Pandas 사용 방법 (0) | 2024.07.30 |
[Python] 파이썬 기본 입력과 출력, print 함수, 인덱스 계산, for 문 등. (0) | 2024.07.30 |