지니뮤직 크롤러 만들기
먼저 구글에서 삽질하면서 코드를 짜보았다
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'}
url = 'https://www.genie.co.kr/chart/top200'
resp = requests.get(url, headers = headers)
soup = BeautifulSoup(resp.text, 'html.parser')
song = soup.find("a",{"class":"title ellipsis"}).text
print(song)
하나씩 설명하자면
headers : 그냥 지니웹사이트에서 크롤링을 시도하니까 크롤링이 차단되었다는 문구가떠서 구글링을해서 찾아보니
유저정보를 입력하면 해결된다해서 입력해주고 url을 get할때 인자로 넘겨주었더니 해결되었다
url : 지니뮤직 실시간차트 200위 페이지주소를 입력해주었다
resp : url과 headers를 넣어주어서 웹페이지를 긁어왔다
soup : Beautifulsoup를 이용해 html소스를 text로 파이썬 객체로 바꾸어주고 python에 내장된 html.parser를 이용할것이라고 입력해줌
song : find를 이용해서 곡제목을 저장
실행결과:

문제점 :
1위곡 하나만 크롤링된다는점
앞에 공백이 너무많다는점(지니웹사이트 html코드 자체에 곡제목앞에 공백이많음)
해결방법:
아까 삽질하면서 찾아본결과 1위곡 하나만 크롤링되는것은 for문을 이용해서 해결해야할듯하고
앞에 공백이많은것은 또다시 삽질하면서 공백을 없애주는코드를 작성해야할듯
지니뮤직 크롤러 만들기
먼저 구글에서 삽질하면서 코드를 짜보았다
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'}
url = 'https://www.genie.co.kr/chart/top200'
resp = requests.get(url, headers = headers)
soup = BeautifulSoup(resp.text, 'html.parser')
song = soup.find("a",{"class":"title ellipsis"}).text
print(song)
하나씩 설명하자면
headers : 그냥 지니웹사이트에서 크롤링을 시도하니까 크롤링이 차단되었다는 문구가떠서 구글링을해서 찾아보니
유저정보를 입력하면 해결된다해서 입력해주고 url을 get할때 인자로 넘겨주었더니 해결되었다
url : 지니뮤직 실시간차트 200위 페이지주소를 입력해주었다
resp : url과 headers를 넣어주어서 웹페이지를 긁어왔다
soup : Beautifulsoup를 이용해 html소스를 text로 파이썬 객체로 바꾸어주고 python에 내장된 html.parser를 이용할것이라고 입력해줌
song : find를 이용해서 곡제목을 저장
실행결과:

문제점 :
1위곡 하나만 크롤링된다는점
앞에 공백이 너무많다는점(지니웹사이트 html코드 자체에 곡제목앞에 공백이많음)
해결방법:
아까 삽질하면서 찾아본결과 1위곡 하나만 크롤링되는것은 for문을 이용해서 해결해야할듯하고
앞에 공백이많은것은 또다시 삽질하면서 공백을 없애주는코드를 작성해야할듯