무소의 뿔처럼

크롤링 서버연결 오류_기록 본문

R

크롤링 서버연결 오류_기록

값을변경 2022. 4. 24. 11:12

R 크롤링을 구글링 하여 text를 가져오려고 한다.

1. 처음엔 코로나 병상, 병실을 차트로 그리기 위해서 data를 긁어오려고 했고

2. 그 data가 어디에도 찾을 수 없어서 하루에 한 번씩 긁어내야 했다.

3. 그래서 크롤링으로 그 작업을 하면 좋을 것 같았다.

 

library(httr)
library(rvest)

가벼운 생각으로 R을 켜고 구글링 한 코드를 실행시켜봤다.

내가 필요한 텍스트는 전혀 긁히지 않았다. 

html 소스로 보니 페이지는 보이지 않았다.

 

jsp로 웹페이지를 만들 때와는 다르게 전혀 다른 시각으로 문제점이 보였다.

몇 시간을 왜 안 나오나 생각하고 낸 결론..

동적 페이지. 

만들고 보면 너무 좋은 동적 페이지.. 

만들 때도 그렇더니.. 크롤링도 시간이 많이 걸렸다.

 

키워드 R크롤링에서 js를 추가시켰다.

library(RSelenium)  #webdriver

 

3개 프로그램 다운로드하여야 하고..

chromedriver.exe
geckodriver.exe
selenium-server-standalone-4.0.0-alpha-1.jar
설치 관련 티스토리

cmd 명령 후 (설치 관련 티스토리에도 있지만 'cd 3개 파일이 설치된 경로' )

java -Dwebdriver.gecko.driver="geckodriver.exe" -jar selenium-server-standalone-4.0.0-alpha-1.jar -port 4445

remDr <- remoteDriver(port = 4445L, # 포트번호 입력
                      browserName = "chrome")#remort설정
remDr$open()#크롬드라이버 실행

버전이 안맞?

정보가 없구나..

크롬드라이버.exe를 실행시키면 드라이버 버전 정보가 나온다
크롬 - 도움말 - 크롬정보

 

이걸 맞춰줘야 할 것 같다. 그 동시에 버전 정보도 명시하고

driver <- rsDriver(browser = 'chrome',
                   chromever = '100.0.4896.127')

오류가 또 생김, 밑에 나온 버전 중 하나를 선택해 넣어봄

driver <- rsDriver(browser = 'chrome',
                   chromever = '100.0.4896.60')

 

그 뒤에 다시 구글링에서 본 코드 넣고 오류를 만난다.

remDr <- remoteDriver(port = 4445L, # 포트번호 입력
                      browserName = "chrome")#remort설정
remDr$open()#크롬드라이버 실행

ㅋㅋㅋㅋㅋ

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

눈치껏 포트 바꿔야겠다.

remDr <- remoteDriver(port = 4567L, # 포트번호 입력
                      browserName = "chrome")#remort설정

 

아이고 됐다..


어제 하루 종일 크롤링해서 서버 돌려보고 결괏값 나오는 걸 보고 

일부러 컴퓨터 완전 종료를 한 후 (연결된 서버가 끊어지고 초기화된다고 해서 해본 듯)

오늘 다시 설정했다. 

 

어제보다는 설정이 빨리 끝났다.

서버 연결이 익숙해져야 할 텐데.. jsp도 엄청 반복했었다.

 

Comments