ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [3주차] 스파르타코딩클럽 웹개발 종합반 마지막
    카테고리 없음 2022. 10. 21. 12:17

    3주차 숙제는 지니뮤직 사이트를 크롤링해 파이참을 실행했을때 순위, 곡제목, 가수가 나오면 성공!

     

    숙제 결과물

    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=20210701',headers=headers)
    
    soup = BeautifulSoup(data.text, 'html.parser')
    
    # select를 이용해서, tr들을 불러오기
    genies = soup.select('#body-content > div.newest-list > div > table > tbody > tr')
    
    # genies (tr들)의 반복문을 돌리기
    for g in genies:
        # g 안에 'td.number'가 있으면 text 중 앞에서 두 글자만 끊고 왼쪽 오른쪽 공백 제거 후 출력
        rank = g.select_one('td.number').text[0:2].strip()
        # g 안에 'a.title.ellipsis'가 있으면 왼쪽 오른쪽 공백 제거 후 text 만 출력
        title =g.select_one('td.info > a.title.ellipsis').text.strip()
        # g 안에 'a.artist.ellipsis가 있으면 text 만 출력
        artist = g.select_one('td.info > a.artist.ellipsis').text
        print(rank,title,artist) # rank, title, artist 출력
    
        # text[0:2] : 앞에서 두 글자만 끊기
        # .strip() : 왼쪽 오른쪽 공백 제거

    실행 결과

    순서대로 순위, 제목, 가수이름이 나온다.

    처음에 조금 애먹었지만 했던 것들 보면서 차근차근 코드 이것저것 다 때려박아봤더니 나왔다..

    .text[0:2]랑 .strip()은 강의에서 구글링 하라하셔서 구글링해서 대충 때려박았다 ㅋㅋㅋ

     

    이로써 3주차 강의가 전부 끝났다.

    4주차부터는 이제 여태까지 했던 것들을 합친다는데.. 이거도 엄청 어려울 것 같다 ㅋㅋㅋ..

     

Designed by Tistory.