웹크롤링
웹스크래핑
Pycharm
HyperTextMarkupLanguage 약어로 웹페이지를 위한 언어
request 모듈
beautiful soup
개발자 모드
크롬, 인터넷익스플로어, 파이어폭스 같은 부라우저를 컨트롤할때 사용
Element : 브라우저 상에서 보이는 버튼, 검색창, 사진등의 모든 것
selenium 활용 youtube 크롤링
import time
from selenium import webdriver
from selenium.webdriver import Keys
from selenium.webdriver.common.by import By
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.service import Service
from bs4 import BeautifulSoup
chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("detach",True)
driver = webdriver.Chrome(service = Service(ChromeDriverManager().install()), options=chrome_options)
driver.maximize_window()
keyword = '연세대학교'
driver.get('https://www.youtube.com/results?search_query=' + keyword)
time.sleep(5)
for temp in range(10) :
driver.find_element(By.TAG_NAME,'body').send_keys(Keys.PAGE_DOWN)
time.sleep(1)
html = driver.page_source
bs = BeautifulSoup(html,'html.parser')
titels = bs.find_all('a',id = 'video-title')
result = []
for temp in titles :
title = temp.get('aria-label').split('조회수')[0]
print(title)
result.append(title)
df = pd.DataFrame(result)
df.to_csv('연세대_유튜브_제목.csv')