인프런 커뮤니티 질문&답변

정권호님의 프로필 이미지
정권호

작성한 질문수

R로 하는 웹 크롤링 - 실전편

셀레늄 맛보기, R로 네이버 로그인 해보기

네이버는 셀레니움을 통해 로그인할 경우 캡챠가 무조건 떠서 불가능하네요

작성

·

545

1

파이썬의 경우 키조합으로 ctrl+c 와 ctrl+v를 만들어서 캡챠를 우회 하더군요 R에서는 불가능 한걸까요?

답변 5

1

코코님의 프로필 이미지
코코
지식공유자

안녕하세요 정권호님. 저도 하나 배워가네요.

좋은 정보 공유 감사드립니다 :) 

1

코코님의 프로필 이미지
코코
지식공유자

안녕하세요 정권호님.

다음과 같이 'close'함수를 이용해서 강제 종료 시킬수 있습니다.

rD <- rsDriver(browser="fire",port=1004L) 

remDr <- rD[["client"]] 

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

remDr$close()

## 다만 여기서 브라우저를 다시 열때에는  ## port number를 바꿔주셔야합니다.

rD <- rsDriver(browser="fire",port=1005L) 

remDr <- rD[["client"]] 

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

1

코코님의 프로필 이미지
코코
지식공유자

안녕하세요 정권호님.

해당 이슈를 확인하였고, 찾아보고 다시 답변드리도록 하겠습니다.

0

정권호님의 프로필 이미지
정권호
질문자

답변 감사합니다! 포트를 재사용하는 방식도 얼떨결에 찾아냈습니다!

rD$server$process$kill_tree()

이 명령어를 쳐주면 포트를 재사용해도 문지가 되지 않더라구요! 

R은 구글링을 해도 원서자체만 나오지 자료가 많지가 않드라구요 ㅠㅜ

0

정권호님의 프로필 이미지
정권호
질문자

writeClipboard("id")

webElem$sendKeysToElement(list(key = "control", "v"))

list안에 key라는 요소를 사용하니까 ctrl + v 키가 입력이 되네요!

또 하나 질문이 있는데  일정 포트로 셀레니움을 키고 작업을 처리한 후에 셀레니움을 끄고나서 다시 포트를 재사용하고 싶은데 rD$server$stop() 을해도 꺼지지가 않더군요 어떻게해야 포트를 재사용할 수 있을까요?

정권호님의 프로필 이미지
정권호

작성한 질문수

질문하기