본문 바로가기
엑셀/VBA

VBA로 해당 웹페이지 모든 이미지 크롤링 다운로드 하기 - Selenium , Chrome

by 큐브빌드 2021. 10. 19.
반응형

 

VBA에서 Chrome으로 크롤링 하기 - Selenium (tistory.com)

 

VBA에서 Chrome으로 크롤링 하기 - Selenium

InternetExplorer로 크롤링을 하던 중 더 이상 업데이트도 되지 않고 적용이 되지 않는 사이트도 많네요 그래서 어떻게 해볼까 하다가 Chrome으로 크롤링 가능한 Selenium이 있어서 소개합니다. SeleniumBasi

downupup.tistory.com

위 페이지를 참고하여 VBA에서 Chrome을 실행하고 크롤링할 수 있게 되었습니다.

 

그리고 모든 HTML 페이지에서 이미지를 삽입하기 위해서는 <img>라는 태그를 사용하게 됩니다.

 

그리고 주소를 입력하기 위해서 <src> 라는 속성을 사용하게 됩니다.

 

즉 <img src = "웹주소"> 이런식으로 이미지가 입력됩니다.

 

이것을 활용합니다.

 

코드로 만들면 아래와 같이 됩니다.

 

Sub 이미지크롤링()
Dim wh As New Selenium.ChromeDriver

wh.Get "인터넷주소"

For Each Value In wh.FindElementsByTag("img")
    웹주소결과 = Value.Attribute("src")
Next


End Sub

그리고 이미지의 모든 웹주소를 알게되었다면

 

url 주소로 파일 다운로드 VBA (urlmon사용) (tistory.com)

 

url 주소로 파일 다운로드 VBA (urlmon사용)

c# 코드에는 urlmon을 사용한 urldownloadtofile이라는 기능이 있습니다. 그래서 VBA에서도 urlmon.dll을 사용한 urldownloadtofile을 사용할 수 있을 것 같아서 한번 시도해봤습니다. Private Declare PtrSafe..

downupup.tistory.com

 

를 사용하여 이미지를 모두 다운로드할 수 있습니다.

 

※ 물론 이미지를 암호화하여 올리는 사이트들도 많기 때문에 100% 모든 사이트에 적용 가능한 것은 아닙니다.

반응형

댓글