크롤링 연습

이선민·2021년 4월 23일
0

strip() 함수

python 문자열 내장 함수에서 python 문자열 공백을 제거하는 함수

  • strip: 문자열의 시작과 끝의 공백을 제거
  • lstrip: 문자열의 시작의 공백을 제거
  • rstrip: 문자열의 끝의 공백을 제거

문자열 인덱싱 및 슬라이싱

str = 'hello world'
str[0:5] # 'hello' 출력, 0은 시작 위치를, 5는 끝 위치를 의미

# 파이썬 슬라이싱에서는 시작값 또는 끝값을 생략하면 알아서 해당 문자열의 시작과 끝을 의미
str[:5] # 'hello' 출력
str[6:] # 'world' 출력

지니뮤직 1~50위 곡을 스크래핑 하기

import requests
from bs4 import BeautifulSoup

from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta

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=D&ymd=20200403&hh=23&rtm=N&pg=1',headers=headers)

soup = BeautifulSoup(data.text, 'html.parser')

trs = soup.select('#body-content > div.newest-list > div > table > tbody > tr')

for tr in trs:
    rank = tr.select_one('td.number').text[0:2].strip()
    title = tr.select_one('td.info > a.title.ellipsis').text.strip()
    artist = tr.select_one('td.info > a.artist.ellipsis').text
    print(rank, title, artist)

출력화면

1 아로하 조정석
2 시작 가호 (Gaho)
3 처음처럼 엠씨더맥스 (M.C the MAX)
4 이제 나만 믿어요 임영웅
5 아무노래 지코 (ZICO)
6 흔들리는 꽃들 속에서 네 샴푸향이 느껴진거야 장범준
7 뭔가 잘못됐어 권진아
8 WANNABE ITZY (있지)
9 돌덩이 하현우 (국카스텐)
10 어떻게 지내 (Prod. by VAN.C) 오반 (OVAN)
11 METEOR 창모 (CHANGMO)
12 화려하지 않은 고백 규현 (KYUHYUN)
13 그때 그 아인 김필
14 Blueming 아이유 (IU)
15 문득 노을
16 마음을 드려요 아이유 (IU)
17 ON 방탄소년단
18 늦은 밤 너의 집 앞 골목길에서 노을
19 좋은 사람 있으면 소개시켜줘 조이 (JOY)
20 뜸 WINNER
21 Psycho Red Velvet (레드벨벳)
22 FIESTA IZ*ONE (아이즈원)
23 반만 진민호
24 2002 Anne-Marie
25 HIP 마마무(Mamamoo)
26 오늘도 빛나는 너에게 (To You My Light) (Feat.이라온) 마크툽 (Maktub)
27 어떻게 이별까지 사랑하겠어, 널 사랑하는 거지 AKMU (악동뮤지션)
28 작은 것들을 위한 시 (Boy With Luv) (Feat. Halsey) 방탄소년단
29 Memories Maroon 5
30 Don't Start Now Dua Lipa
31 안녕 폴킴
32 다시 난, 여기 백예린 (Yerin Baek)
33 모든 날, 모든 순간 (Every day, Every Moment) 폴킴
34 Love poem 아이유 (IU)
35 바빠서 (Feat. 헤이즈) 개코
36 꽃 (flower) (Feat. 박재범 & 우원재 & 기리보이) 코드 쿤스트 (CODE KUNST)
37 Square (2017) 백예린 (Yerin Baek)
38 노래방에서 장범준
39 bad guy Billie Eilish
40 조금 취했어 (Prod. by 2soo) 임재현
41 잘 지내고 있는지 궁금해 V.O.S
42 시든 꽃에 물을 주듯 HYNN (박혜원)
43 새로고침 (Feat. 강민경 of 다비치) 박경
44 사랑이란 멜로는 없어 전상근
45 벚꽃 엔딩 버스커 버스커 (Busker Busker)
46 우리 왜 헤어져야 해 신예영
47 사랑의 인사 씨야 (SeeYa)
48 아무렇지 않게, 안녕 HYNN (박혜원)
49 Paris In The Rain Lauv
50 주저하는 연인들을 위해 잔나비

0개의 댓글