Language(R, Python, SQL)/R

[R] Windows 환경 R 크롤러(Selenium) 만들기 + RPA

dtstory 2022. 12. 15. 20:00

R 크롤러를 만들기 위해, 필요한 도구들을 우선 설치해보자.

 

설치에 앞서, C드라이브에 selenium 이라는 폴더를 만들어주자 ( C:\selenium )

 

 

 

1. Selenium Standalone Server 설치

http://selenium-release.storage.googleapis.com/index.html

 

http://selenium-release.storage.googleapis.com/index.html

 

selenium-release.storage.googleapis.com

해당 링크에 접속하고, 아래쪽으로 스크롤하다보면, 4.0 폴더가 있을 것이다. 해당 폴더내에,

"selenium-server-standalone-4.0.0-alpha-1.jar" 파일을 설치하고, 처음에 만들었던 C:\selenium 로 이동시켜주자.

 

 

 

 

 

 

 

2. geckodriver 설치

https://github.com/mozilla/geckodriver/releases/tag/v0.17.0

 

Release v0.17.0 · mozilla/geckodriver

Added Added endpoints: POST /session/{session id}/window/fullscreen to invoke the window manager-specific full screen operation POST /session/{session id}/moz/addon/install to install an extensio...

github.com

해당링크에 접속후, 아래쪽으로 스크롤 하다보면, 각 운영체제에 맞는 geckodriver zip 파일이 있을 것이다. windows 환경에서 구동할 것이기에, "geckodriver-v0.17.0-win64.zip" 을 설치한다. 해당 zip을 압축해제 하게되면 나오는, "geckodriver.exe" 파일을 C:\selenium 로 이동시켜주자.

 

 

 

 

 

3. ChromeDriver 설치

 

ChromeDriver 설치에 앞서, 현재 사용하는 크롬 버전을 확인해야한다.

3-1. 크롬 버전확인하기.

크롬을 킨 뒤, "chrome://settings/help" 에 접속하면 버전 정보를 확인할 수있다. 현재 내가 사용하는 크롬 버전은 107.0.5304.121 인것을 인지한다.

 

3-2.크롬드라이버 설치

https://chromedriver.chromium.org/downloads

 

ChromeDriver - WebDriver for Chrome - Downloads

Current Releases If you are using Chrome version 109, please download ChromeDriver 109.0.5414.25 If you are using Chrome version 108, please download ChromeDriver 108.0.5359.71 If you are using Chrome version 107, please download ChromeDriver 107.0.5304.62

chromedriver.chromium.org

해당 링크에 접속해서 아래의 그림과 같이 내가 사용하는 크롬 버전에 맞는 크롬드라이버를 설치해야한다.

나 같은 경우, 107.0.5304.xxx 이기때문에, 제일 아래에 있는 크롬드라이버를 설치하면 된다. 설치 후, 압축을 해제하면 "chromedriver.exe" 파일이 생길 것이고, 마찬가지로 C:\selenium 로 이동시켜주자.

 

 

 

 

 

4. 설치된 도구들 확인하기.

이제, C:\selenium 로 이동하게 되면, 폴더 내에 아래 그림과 같이 파일들이 존재할 것이다.

 

 

 

 

 

 

5. 크롬드라이버 배치파일(.bat) 만들기 -> (번거롭게, cmd 창을 키고, 구동시키지 않아도 된다)

원하는 경로(나 같은 경우 D드라이브 내에 해당 파일을 만들었다.) 에 chromedriver_connector.bat 라는 파일을 만들고 아래의 내용을 입력후, 저장한다. 

 -> 참고로 port 번호 4458 은 사용자 임의 지정 포트이기에, 원하는 포트명으로 입력해주면 된다.

@echo off
C:
cd C:\selenium
start cmd.exe /k "java -Dwebdriver.gecko.driver="geckodriver.exe" -jar selenium-server-standalone-4.0.0-alpha-1.jar -port 4458"

 

 

 

 

 

6. R 접속 후, 크롬드라이버 실행해보기.

해당 코드를 실행하면 자동으로 CMD 창이 열리며, 크롬드라이버가 구동되고 셀레니움으로 데이터수집하기 위한 웹창이 열릴 것이다.

system('"D:/chromedriver_connector.bat"',wait=FALSE, invisible = TRUE, minimized = TRUE)

Sys.sleep(1)
remDr = remoteDriver(
  remoteServerAddr="localhost",
  port=4458L,
  browserName="chrome")

remDr$open()
remDr$navigate("https://www.naver.com")

해당 코드 실행후, 네이버 홈 페이지가 열리면 성공적으로 수행된 것이다!

 

 

 

 

 

728x90