반응형
파이썬 크롤링 강의 멜론 사이트 실시간 순위 top100 웹스크래핑 csv파일 저장방법
파이썬 beautifulsoup, urllib.request 등을 사용하여 멜론 사이트를 크롤링 하는 예제입니다. 멜론 실시간순위 top100을 스크래핑하여 구글 스프레드시트, 엑셀 등에서 사용할 수 있는 csv파일로 저장하는 내용의 강의로 크롤링중 만나기 쉬운 urllib.error.HTTPError: HTTP Error 406: Not Acceptable 에러를 헤더값을 추가하여 해결하는 방법도 배울 수 있습니다.
유튜브 김플 스튜디오에 방문하시면 더 많은 파이썬 강의를 보실수 있습니다.
프로그래머 김플 스튜디오 유튜브 Go!
# 소스코드 - 자세한 사용법은 유튜브 영상을 참조하세요.
# 영상 제작 날짜 기준의 코드입니다. 이후 사이트 구조가 달라지거나 기타 이유로 작동하지 않을 수 있습니다.
import urllib.request
from bs4 import BeautifulSoup
import csv
hdr = { 'User-Agent' : 'Mozilla/5.0' }
url = 'https://www.melon.com/chart/index.htm'
req = urllib.request.Request(url, headers=hdr)
html = urllib.request.urlopen(req).read()
soup = BeautifulSoup(html, 'html.parser')
lst50 = soup.select('.lst50,.lst100')
melonList = []
for i in lst50:
temp = []
temp.append(i.select_one('.rank').text)
temp.append(i.select_one('.ellipsis.rank01').a.text)
temp.append(i.select_one('.ellipsis.rank02').a.text)
temp.append(i.select_one('.ellipsis.rank03').a.text)
melonList.append(temp)
with open('melon100.csv','w',encoding='utf-8',newline='') as f:
writer = csv.writer(f)
writer.writerow(['순위','아티스트','곡명','앨범'])
writer.writerows(melonList)
반응형
'프로그래밍 > before' 카테고리의 다른 글
파이썬 자동화 셀레니움(selenium) webdriver와 actionchains으로 웹사이트 매크로 제작 (1) | 2020.03.25 |
---|---|
파이썬 자동화 selenium 사용법 브라우저 매크로 프로그램 만들기 입문 (0) | 2020.03.21 |
파이썬 구글 크롤링 selenium(셀레니움), beautifulsoup 자바스크립트 웹스크래핑 (1) | 2020.03.21 |
파이썬 크롤링 csv 파일저장 방법 네이버 모바일 검색결과 웹스크래핑 (0) | 2020.03.08 |
파이썬 여러페이지 크롤링 네이버 블로그 검색결과 웹스크래핑 (1) | 2020.03.08 |