본문 바로가기
프로그래밍/Python

[Python] Python webCrawling+Ubuntu18.04 설정::우주를놀라게하자

by 우주를놀라게하자 2019. 8. 9.
반응형
SMALL


구글이나 혹은 네이버에서 필요에 따라 다량의 사진을 받아올 경우가 있다. 그러한 상황에 맞춰서 사용할 수 있는 기술이 크롤링이다.


크롤링을 활용하기 전에 Selenim에 대해 소개하고 간단하게 웹을 띄우기까지 설정을 맞추는 방법에 대해서 설명하겠다.

(*참고로...난 좀 헤맸다...다른 사람은 이런 불상사가 없길 바라며, 꼼꼼하게 적으려한다.)


1.Selenium 소개


Selenium은 웹 브라우저를 컨트롤하여 웹 UI를 다루는 도구중에 하나이다. Selenium 라이브러리 내의 webdriver에는 각 브라우져의 타입별로 구성되어 있는 Brower Driver가 포함되어 있다. 동작원리는....일단 패스한다...나도 어려워서 잘 모르겠다...


일단 Selenium을 설치해보자

Selenium 설치

 pip install selenium


Selenium을 사용하기 위해선 각 브라우저별로 Selenium 드라이버를 설치한다. 드라이버가 설치된 후, 해당 드라이버의 경로를 실행 PATH에 넣어주어야 한다. 이러한 과정이 없을 시에 아래와 같은 에러가 발생한다.

 에러사항

 selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home


https://chromedriver.storage.googleapis.com/index.html?path=76.0.3809.68/ 

위의 경로로 가서 Ubuntu버전을 설치해준다.


다운로드가 완료되면 해당 폴더에 들어가서 아래와 같이 입력해준다

Selenium 드라이버를 PATH경로로 옮기자

 sudo mv chromedriver /usr/bin


이제 파이썬이 크롬을 사용할 준비는 되었다!!라고!!생각했는데 이번엔 아래와 같이 에러가 발생했다....


 에러사항

 selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 76




대에에충 보아하니 ChromeDriver와 Chrome의 버전이 안맞기 때문이란다...그래서 Chrome자체를 아예 최신버전으로 바꿔줬다...

위의 에러에서 Chrome 76을 원하니 Chrome 76을 설치해줬다.. 그냥 최신버전을 받으면 76이다..


그리고 아래의 코드를 돌려보자

 코드

 from selenium import webdriver

browser = webdriver.Chrome()
browser.get("http://google.com")



Selenium을 사용해서 웹 브라우저가 깔끔하게 뜬다... 이제 설정은 됬으니 구글에서 원하는 사진을 맘껏 훔쳐와보자!ㅎㅎ



반응형
LIST