| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- 컴파일
- 작은수제거하기
- java map 저장
- 격파르타장점
- java알고리즘문제풀이
- java알고리즘
- 인터프린터언어
- 코딩부트캠프후기
- 항해15기
- java map 출력
- java기본자료형
- java set 출력
- 격파르타비전공자
- 프로그래머스제일작은수
- java참조자료형
- java set 저장
- 격파르타후기
- java 자료구조 활용
- 격파르타합격후기
- sqld자격증합격
- javaJVM
- 노베이스부트캠프
- java list 저장
- 항해99후기
- java list 출력
- java map
- 프로그래머스
- 비전공자sqld
- javaJRE
- java최솟값구하기
- Today
- Total
코딩과 결혼합니다
3주차 숙제 (웹스크래핑) 본문
웹개발 종합반 3주차 - 3주차 숙제 (웹스크래핑)
*지니뮤직의 1~50위 곡을 스크래핑 해보기.
1) 새로운 파일 만들기

2) 크롤링의 기본코드 복붙
3) URL 바꾸기
URL = "https://www.genie.co.kr/chart/top200?ditc=M&rtm=N&ymd=20230101"
그다음 print(soup)으로 데이터가 잘 찍히는 확인
4) 검사

검사를 해봤을때 곡 하나 하나가 <tr> 태그 안에 있음을 확인할 수 있다.
곡이름은 #body-content > div.newest-list > div > table > tbody > tr:nth-child(1) > td.info > a.title.ellipsis
여기서 앞부분은 가져왔으니 필요한 td.info > a.title.ellipsis 여기 부분만 써주면 되겠다.
5) 곡제목 가져오기
실행해 보면

이 난리로 나온다.
6) 앞 뒤 공백 자르기
그럴 때에는 .strip()
7) 랭크 추가
rank또한 copy selector로 가져와서 필요한 부분 빼고 지운 다음 한 번 실행해 본다.

그럼 또 이지경으로 나옴
8) 앞에 두 개 까지만 나오도록 하기(순위만 나오도록) + 공백 없애기
9) title, rank 프린트

10) artist도 추가하기
print되는 순서는 rank - title - artist

완성 🙌🙌🙌🙌
사실 혼자서는 못 하고 해설 영상 보면서 했다. 처음에는 해설 영상을 봐도 뭔말인지 잘 이해를 못 했는데
2번째 봤을때는 완벽 이해! 다음 번에는 끝까지 혼자 해봐야겠다.
'2세 > Python' 카테고리의 다른 글
| Flask (0) | 2023.05.11 |
|---|---|
| Python 기초 문법 - 리스트 (0) | 2023.05.10 |
| mongoDB (0) | 2023.05.10 |
| 웹스크래핑(크롤링) (0) | 2023.05.08 |
| requests 라이브러리 (0) | 2023.05.08 |