본문 바로가기
Python/웹크롤링

(웹크롤링)파이썬, python, BeautifulSoup_ 3. 멜론 차트 크롤링

by 하방주인장 2023. 5. 18.

목차

     

    1. 기본 설정

    import requests
    from bs4 import BeautifulSoup
    from selenium import webdriver
    
    # 멜론 차트 사이트 접속
    driver_path = 'C:/Users/Playdata/Desktop/dev/setup/chromdriver.exe'
    driver = webdriver.Chrome(driver_path)
    url = 'https://www.melon.com/chart/'
    driver.get(url)
    
    # 멜론 차트 크롤링
    html = driver.page_source
    soup = BeautifulSoup(html, 'html.parser')

     

    2. 웹크롤링

    서비스, 순위, 제목, 가수 정보를 크롤링 하여 엑셀 파일로 저장하기

     

     

    2-1. 제목

    # title 개수 확인: 100개
    len(soup.select('.rank01')) # title
    >>> 100
    
    # 100개 title 저장
    title_lst = []
    for title in range(100):
        title_lst.append(title_tag[title].get_text().strip())
    len(title_lst)
    >>> 100

     

    2-2. 가수

    # singer 개수 확인: 100개
    len(soup.select('.rank02')) # 가수
    >>> 100
    
    # 100개 singer list 저장 
    singer_lst = [tag.get_text().strip() for tag in singer_tag]
    len(singer_lst)
    >>> 100

     

    2-3. 데이터프레임 생성

    import pandas as pd
    data_dic = {}
    data_dic['서비스'] = ['Melon'] * 100
    data_dic['순위'] = [i for i in range(1, 101)]
    data_dic['제목'] = title_lst
    data_dic['가수'] = singer_lst
    df = pd.DataFrame(data_dic)

     

    2-4. 엑셀로 저장

    df.to_excel('files/melon.xlsx', index=False)

    댓글