1) 멜론 사이트에서 국내 최신곡 10위까지의 정보를 노래제목, 가수, 앨범, 좋아요 수를 출력하시오

tables = pd.read_html(requests.get(url,
                                   headers={'User-agent': 'Mozilla/5.0'}).text,
                      attrs={"class":"tabelle_grafik"})[0]
import pandas as pd
import requests
from bs4 import BeautifulSoup

url ='https://www.melon.com/new/index.htm'
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36'}

table = pd.read_html(requests.get(url, headers=headers).text)
table[0]
Unnamed: 0 NO 앨범이미지 곡 상세가기 곡정보 앨범 좋아요 듣기 담기 다운 뮤비
0 NaN 1위 NaN 곡정보 어쩜 이승환, 선우정아 어쩜 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
1 NaN 2위 NaN 곡정보 Lovelylove (Feat. 최낙타) 요다영 Lovelylove 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
2 NaN 3위 NaN 곡정보 YOU 아티(arty) YOU 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
3 NaN 4위 NaN 곡정보 우리가 반짝이는 순간 훈스 (HOONS) 우리가 반짝이는 순간 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
4 NaN 5위 NaN 곡정보 Wake up (feat. DJ Wegun) Untell (언텔) Wake up (feat. DJ Wegun) 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
5 NaN 6위 NaN 곡정보 그래요 (Prod. MeQue) 라 블랑캣 (La Blancat) 그래요 (Prod. MeQue) 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
6 NaN 7위 NaN 곡정보 잘가요 내사랑 정동원 그리움, 아낌없이 주는 나무 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
7 NaN 8위 NaN 곡정보 언제나 우리 그대로 암호 (AMHO) The Piece 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
8 NaN 9위 NaN 곡정보 LIGHTNING (번개) (Feat. JINBO) TAEO, LVPS The WEATHER Project 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
9 NaN 10위 NaN 곡정보 JENGA OVCOCO (오브코코) JENGA 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
10 NaN 11위 NaN 곡정보 보내 오현란 두 번째 남편 OST Part.6 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
11 NaN 12위 NaN 곡정보 Kitty (Feat. 미연 ((여자)아이들) Kid Milli, dress Kitty (Feat. 미연 ((여자)아이들) 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
12 NaN 13위 NaN 곡정보 더는 볼 수 없겠지 (feat.모닝커피) 하진우 더는 볼 수 없겠지 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
13 NaN 14위 NaN 곡정보 물거품 (Mermaid) 도우진 푸른야생마: 바다로 가는 길 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
14 NaN 15위 NaN 곡정보 연희동에 찾아와요 조여래 연희동에 찾아와요 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
15 NaN 16위 NaN 곡정보 Flashing Lights (Feat. The Deep) 이람 Self-Titled EP 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
16 NaN 17위 NaN 곡정보 어때? (Feat. 영운, 혜빈) Flospoon 어때? 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
17 NaN 18위 NaN 곡정보 너라는 바람이 난 좋아 굴뚝새 너라는 바람이 난 좋아 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
18 NaN 19위 NaN 곡정보 My everything 이정 My everything 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
19 NaN 20위 NaN 곡정보 그대가 부네요 (With 김필) Ecobridge 그대가 부네요 (With 김필) 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
20 NaN 21위 NaN 곡정보 Life 윤상미X윤혜진 HOLIDAY 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
21 NaN 22위 NaN 곡정보 우리가 어떻게 헤어져 갓튼 (Godton) 우리가 어떻게 헤어져 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
22 NaN 23위 NaN 곡정보 Hold me like the ocean 혁기 (hucki) Underwater 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
23 NaN 24위 NaN 곡정보 Born Again Z-SANG (지상) Born Again 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
24 NaN 25위 NaN 곡정보 이 나이 먹고 뭐했길래 (Feat. 정슬기, 칸토) 미스에스 이 나이 먹고 뭐했길래 (TEN PROJECT Part.7) 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
25 NaN 26위 NaN 곡정보 대기실 싸이퍼 Yonge Jaundice (영 잔디스), PULLIK (박준호),... 대기실 싸이퍼 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
26 NaN 27위 NaN 곡정보 All I Need 젬마(JEMMA) 멜랑꼴리아 OST Part 1 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
27 NaN 28위 NaN 곡정보 Follow 김슬옹, 데이비드 오 Follow 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
28 NaN 29위 NaN 곡정보 너의 사랑이 날 웃게 해 이민혁 너의 사랑이 날 웃게 해 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
29 NaN 30위 NaN 곡정보 DAYDREAM Jessica (제시카) 제시카 & 크리스탈 - US로드트립 OST Part.3 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
30 NaN 31위 NaN 곡정보 너로 가득한 하루 위아영 (WeAreYoung) 너로 가득한 하루 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
31 NaN 32위 NaN 곡정보 어느 60대 노부부 이야기 이상, 고영열 풍류대장 - 힙한 소리꾼들의 전쟁 Episode.7 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
32 NaN 33위 NaN 곡정보 산정호수의 밤 임형주 Lost In Time(잃어버린 시간 속으로) 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
33 NaN 34위 NaN 곡정보 흰 양말 전자양 흰 양말 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
34 NaN 35위 NaN 곡정보 좋아좋아 (Feat.최아인) 민지 좋아좋아 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
35 NaN 36위 NaN 곡정보 빨간 mong_gle (몽글) 빨간 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
36 NaN 37위 NaN 곡정보 사랑이 늦어서 미안해 IN THE CITY (인 더 시티) PLAYBACK #5 '사랑이 늦어서 미안해' 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
37 NaN 38위 NaN 곡정보 별의 조각 윤하 (YOUNHA) YOUNHA 6th Album 'END THEORY' 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
38 NaN 39위 NaN 곡정보 서로의 서로 적재 서로의 서로 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
39 NaN 40위 NaN 곡정보 남아있어 (feat. Horim) 제이스틴 (ZAYSTIN) 남아있어 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
40 NaN 41위 NaN 곡정보 GROW UP bobae GROW UP 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
41 NaN 42위 NaN 곡정보 생각의 역습 전남친, 디핵 (D-Hack) 생각의 역습 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
42 NaN 43위 NaN 곡정보 아직 잊을 수가 없어서 (Feat. 리디아) 더 라임 아직 잊을 수가 없어서 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
43 NaN 44위 NaN 곡정보 Sequence One Off Them Sequence 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
44 NaN 45위 NaN 곡정보 It's Cold (feat. BOiTELLO) Aden (에이든) It's Cold 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
45 NaN 46위 NaN 곡정보 나보다 너를 더 (Feat. Mingginyu) Bas Bao (바스바오) 나보다 너를 더 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
46 NaN 47위 NaN 곡정보 Fly 강다니엘, 챈슬러 싸이월드 BGM 2021 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
47 NaN 48위 NaN 곡정보 CALL ME BACK (Feat. OLNL, YEYEBEEN) PEAXE MARKET CALL ME BACK 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
48 NaN 49위 NaN 곡정보 지나갈거야 BigDD N SoulPowder 지나갈거야 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
49 NaN 50위 NaN 곡정보 별빛을 따라 ODD-CAT (오드캣) 별빛을 따라 좋아요 총건수 0 듣기 담기 다운로드 뮤직비디오
# 가수 : div rank02
# 앨범 : div rank03
# 좋아요 : span cnt
    
import requests
from bs4 import BeautifulSoup

url ='https://www.melon.com/new/index.htm'
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36'}

response = requests.get(url, headers=headers)
response.raise_for_status() 

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

all_song = soup.find_all('tr')
for i, song in enumerate(all_song) :
    #print(song)
    title = song.find_all('div', attrs={'class' : 'rank01'})
    
    if len(title) == 0 : continue
    if i >10 : break
    
    title = title[0].a.get_text()
    print(i, title, end=' ')
    
    singer = song.find_all('div', attrs={'class' : 'rank02'})
    singer = singer[0].a.get_text()
    print(singer, end=' ')
    
    album = song.find_all('div', attrs={'class' : 'rank03'})
    album = album[0].a.get_text()
    print(', 앨범명:', album)
    
1 어쩜 이승환 , 앨범명: 어쩜
2 Lovelylove (Feat. 최낙타) 요다영 , 앨범명: Lovelylove
3 YOU 아티(arty) , 앨범명: YOU
4 우리가 반짝이는 순간 훈스 (HOONS) , 앨범명: 우리가 반짝이는 순간
5 Wake up (feat. DJ Wegun) Untell (언텔) , 앨범명: Wake up (feat. DJ Wegun)
6 그래요 (Prod. MeQue) 라 블랑캣 (La Blancat) , 앨범명: 그래요 (Prod. MeQue)
7 잘가요 내사랑 정동원 , 앨범명: 그리움, 아낌없이 주는 나무
8 언제나 우리 그대로 암호 (AMHO) , 앨범명: The Piece
9 LIGHTNING (번개) (Feat. JINBO) TAEO , 앨범명: The WEATHER Project
10 JENGA OVCOCO (오브코코) , 앨범명: JENGA

2) 네이버에서 bts이미지를 검색한 후 나온 결과 중 5개의 이미지를 저장

import os
import time

import requests
from bs4 import BeautifulSoup
from selenium import webdriver

driver = webdriver.Chrome()

url ='https://search.naver.com/search.naver?where=image&sm=tab_jum&query=bts'
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36'}

# 셀레늄을 이용하여 특정 사이트로 이동한 후 1초동안 대기
driver.get(url)
time.sleep(1)

soup = BeautifulSoup(driver.page_source)
bts_imgs = soup.find_all('img', attrs={'class' : '_image _listImage'})

print('그림의 개수 :', len(bts_imgs)) # 첫 화면에 보이는 이미지의 개수=> 더 많음

# 이미지 저장할 폴더 생성
img_dir = './bts_img/'

if not os.path.exists(img_dir) : # 디렉토리가 없으면 생성
    os.makedirs(img_dir) 
    print('폴더 생성')
else : 
    print('폴더가 존재함')
    
for i, image in enumerate(bts_imgs) :
    img_url = image['src']
    
    if(not img_url.startswith('http')) : continue
    
    img_src = requests.get(img_url, headers=headers)
    img_src.raise_for_status()
    
    with open(img_dir + 'bts_{}.jpg'.format(i), 'wb') as f:
        print(img_url)
        f.write(img_src.content)
        if i >= 10 : break;
        
print('BTS 사진 저장 완료')    
그림의 개수 : 50
폴더가 존재함
https://search.pstatic.net/sunny/?src=https%3A%2F%2Fi.pinimg.com%2F736x%2Ff5%2F82%2F21%2Ff5822169011e5066f0064be0839718f9.jpg&type=a340
https://search.pstatic.net/sunny/?src=https%3A%2F%2Fi.pinimg.com%2F736x%2Fc5%2F7a%2Fb9%2Fc57ab924dc00bfce55807cab3eb83104.jpg&type=a340
https://search.pstatic.net/common/?src=http%3A%2F%2Fimgnews.naver.net%2Fimage%2F018%2F2021%2F11%2F19%2F0005089810_001_20211119144701057.jpg&type=a340
https://search.pstatic.net/common/?src=http%3A%2F%2Fimgnews.naver.net%2Fimage%2F032%2F2021%2F11%2F20%2F0003111362_001_20211120093901154.jpg&type=a340
https://search.pstatic.net/common/?src=http%3A%2F%2Fimgnews.naver.net%2Fimage%2F117%2F2021%2F11%2F17%2F202111171317786542_1_20211117131804387.jpg&type=a340
https://search.pstatic.net/sunny/?src=https%3A%2F%2Fi.pinimg.com%2F736x%2F03%2F31%2Fd7%2F0331d7eb5eebdb3bfd135b42b9b3a101.jpg&type=ofullfill340_600
https://search.pstatic.net/common/?src=http%3A%2F%2Fimgnews.naver.net%2Fimage%2F277%2F2021%2F11%2F19%2F0005002387_001_20211119143001771.jpg&type=a340
https://search.pstatic.net/common/?src=http%3A%2F%2Fimgnews.naver.net%2Fimage%2F003%2F2021%2F11%2F17%2FNISI20211117_0018165248_web_20211117132733_20211117132806271.jpg&type=a340
https://search.pstatic.net/sunny/?src=https%3A%2F%2Fi.pinimg.com%2F736x%2F09%2F27%2F56%2F092756d74752e775107715aed87d9f6a.jpg&type=ofullfill340_600
https://search.pstatic.net/common/?src=http%3A%2F%2Fimgnews.naver.net%2Fimage%2F5526%2F2021%2F11%2F20%2F0000290291_001_20211120113202901.png&type=a340
https://search.pstatic.net/common/?src=http%3A%2F%2Fimgnews.naver.net%2Fimage%2F003%2F2021%2F11%2F16%2FNISI20211116_0000870028_web_20211116090333_20211116091905465.jpg&type=ofullfill340_600
BTS 사진 저장 완료
temp1 = "http://www.naver.com"
temp2 = "http://www.daum.net"

print(temp1.startswith('http'))
print(temp2.startswith('http'))

print(temp1.endswith('com'))
print(temp2.endswith('com'))
True
True
True
False
pip install selenium
pip show selenium 
구글에서 "chrome://version"
chromedriver를 검색해서
자신의 크롬 프로그램 버전에 맞는 chromedriver를 다운로드 받는다.
압축 해제