플그래밍/파이써언

[파이썬] 다음 포토 저장하기 (Selenium)

훗티v 2022. 1. 21. 06:12

 

문제 - 파이썬 selenium

- 다음 포토의 "스타 직찍" 코너의 최근 사진 파일을 특정 개수만큼 저장해보자.

 

 

코드 - 파이썬 selenium

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from time import sleep

# create webdriver object
options = Options()
options.headless = True # 헤드레스 모드
options.add_argument('--window-size=1920,1080') # 브라우저 창 크기
driver = webdriver.Chrome(r'c:\chromedriver', chrome_options=options) # 크롬드라이버 파일 위치

# 다음 포토 사이트
driver.get("https://gallery.v.daum.net/p/viewer/246")
driver.implicitly_wait(5)

i = 0
j = 20 # 추출 개수

for i in range(i, j):

    # 엘레멘트 추출 모듈
    element = driver.find_element_by_xpath(f'//*[@id="mArticle"]/div[1]/div[4]/div/div/div[{i+1}]/div/div/div/div/div/a')

    # 스크린샷 모듈
    element.screenshot(f'daum_image_{i+1}.png')

    # 클릭 모듈
    driver.find_element_by_xpath('//*[@id="mArticle"]/div[1]/div[4]/button[2]').click()

driver.quit()

- Selenium을 사용하기 위해서는 Chromedriver 다운 후

- 드라이버 파일 위치를 설정해주어야 한다.

- j는 원하는 개수만큼 수정 가능하다.

- 헤드레스 모드이기 때문에 크롬창이 뜨지 않는다.

 

결과 - 파이썬 selenium

- 저장된 이미지 파일

 

- 다음 포토 웹사이트

- 위와 같이 사진이 두개일 경우 왼쪽 첫번째 사진이 저장된다.

 

 

 

 

 

[플그래밍/파이써언] - [파이썬] 입력값을 split처리 후 tuple, list 만들기

[플그래밍/파이써언] - [파이썬] 입력값 n으로 (i, i * i) 형태의 딕셔너리 만들기

[플그래밍/파이써언] - [파이썬] 입력값의 팩토리얼 계산하기

[플그래밍/파이써언] - [파이썬] 7로 나누어 떨어지고 5의 배수가 아닌 숫자 찾기

[플그래밍/파이써언] - [파이썬] 폴더 내 파일 확장자별로 분류하기

 

 

 

 

 

728x90