AWS
AWS Cloud9 에서 Selenium 으로 크롤링 하기 (Ubuntu)
bryan.oh
2023. 8. 1. 09:50
반응형
Cloud9 에서 selenium 으로 크롤링하기 (Ubuntu)
환경 생성
플랫폼은 Ubuntu 를 선택
나머지는 기본으로 하고, [생성] 클릭.
환경이 생성이 완료되면 접속
터미널에서 다음 명령어 실행
sudo apt-get update
완료되면 다음 명령어 실행
sudo apt-get install -y libappindicator1 fonts-liberation
sudo apt-get install -f
다음 명령어로 크롬 다운로드
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
크롬 설치
sudo dpkg -i google-chrome-stable_current_amd64.deb
설치된 chrome version 확인
google-chrome-stable -version
아래와 같이 오류가 발생한다면
이 문제를 해결하기 위해서, 아래 명령어 입력
sudo apt-get install libatk-bridge2.0-0
sudo apt-get --fix-broken install
설치 중간에 [Y/n] 나오면 y 입력
설치가 완료되면, 다시 버전 확인
google-chrome-stable -version
글 작성 시점의 최신버전인 google-chrome 115 버전을 확인.
cli 테스트
google-chrome-stable --headless --disable-gpu --print-to-pdf https://hello-bryan.tistory.com/490
이렇게 나오면, root 경로에 output.pdf 가 생성되고 정상적으로 실행된 것
Selenium 설치
글 작성 시점의 최신버전인 4.10.0 설치
pip3 install selenium==4.10.0
pip3 install webdriver_manager==4.0.0
python 크롤링 코드 작성
main.py 파일을 생성하고, 아래와 같이 sample 코드 작성
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options
if __name__ == '__main__':
chrome_options = Options()
chrome_options.add_argument('--headless')
print(ChromeDriverManager().install())
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)
page_data = ''
driver.get('https://hello-bryan.tistory.com/category/AI')
# 검색어 입력
title_list = driver.find_elements(by=By.CSS_SELECTOR, value="span.title")
for title in title_list:
print(title.text)
driver.quit()
실행결과
728x90
반응형