05.10 이미지 크롤링

최고고·2022년 5월 10일
0

이미지 크롤링

  • 이미지를 크롤링 할 때도 url설정-파싱-셀렉 순으로 해주는데

    리스트에 src (이미지경로)가 담기지 않는다.
    이럴 때

Selenium 모듈을 설치한다.

  • 웹페이지를 제어하기 위한 모듈로 chrome driver를 검색해 !pip install 한다.

1. url 설정

셀레늄은 req가 아닌 driver 객체를 사용한다.
driver = wb.Chrome()
driver.get(url

2. 파싱

  • .text 가 아닌 driver.page_source

3. select


  • 태그의 속성을 입력해서 인덱싱해올수도있다.
    이미지는 단일속성, text가 없기 때문에 src 속성 값을 인덱싱할 수 있다.

4. src 값 이용해 이미지파일로 저장

- 이미지 저장 라이브러리

import os : 파일이나 폴더를 생성, 삭제 존재여부 파악
from urllib.request import urlretrieve : 이미지경로를 파일로 저장


urlretrieve(img[7]['src'],'이미지/1.png' ) : url을 이미지 파일로 복사하겠다. (값, 경로)

- 폴더에 저장했을 때, src 값이 제대로 가져와지지않아서 저장이 안되어있는 경우가 있다.


이렇게..

1. 그럴때는 스크롤이 로딩중이라 안되기 때문에 스크롤 라이브러리를 이용

from selenium.webdriver.common.keys import Keys

2. 스크롤 라이브러리를 이용해도 안되는 경우는 'src' 가 data : 이렇게 시작되어있음 ============> 'data-lazy-src' 이부분으로 가져와야됨

  • try except 문 으로 오류가 났을 시 src슬라이싱이 실행되게 만들어줌

- urlretrieve(만들어놓은 리스트 값, 경로) 반복문


0개의 댓글