크롤링을 사용하여 geo_code만들기

library(xml2)
library(devtools)
install_github('qkdrk777777/kma2')
## Skipping install of 'kma2' from a github remote, the SHA1 (d7b37a54) has not changed since last install.
##   Use `force = TRUE` to force installation
library(kma2)
library(plyr)
library(stringr)
library(automap)
## Loading required package: sp
library(gstat)
library(RSelenium)
library(devtools)


geo_code=function(name,port1=4565L,port2=4566L,n=3){

library(devtools)
if (!require("RSelenium")) {
  install_version("binman", version = "0.1.0", repos = "https://cran.uni-muenster.de/")
  install_version("wdman", version = "0.2.2", repos = "https://cran.uni-muenster.de/")
  install_version("RSelenium", version = "1.7.1", repos = "https://cran.uni-muenster.de/")
}
library(RSelenium)
install_github('qkdrk777777/kma2')
library(kma2)

pack2(c("rvest", "httr", "stringr", "RCurl", "XML", "progress"))
pJS <<- wdman::phantomjs(port = port1)
eCaps <<- list(chromeOptions = list(prefs = list(profile.default_content_settings.popups = port2, download.prompt_for_download = FALSE)))
rD <<- rsDriver(extraCapabilities = eCaps)
remDr <<- rD$client
# remDr$open()
url='https://www.google.com/maps'
remDr$navigate(url)

search=NULL
while(length(search)==0){
assign('search',remDr$findElement(using='css selector',value='input#searchboxinput.tactile-searchbox-input'))
}

data=NULL
for(i in 1:length(name)){
  search$clearElement()
  search$sendKeysToElement(list(name[i],key='enter'))
  Sys.sleep(n)
  lonlat=as.numeric(str_split(substr(remDr$getCurrentUrl()[[1]],
regexpr('@',remDr$getCurrentUrl()[[1]])+1,regexpr(',[0-9]+z',remDr$getCurrentUrl()[[1]])-1),',')[[1]])
  data=rbind(data,data.frame(name=name[i],lat=lonlat[1],lon=lonlat[2]))
}

try(silent = T,rD$server$stop())
try(silent = T,remDr$close())
try(silent = T,pJS$stop())

return(data)
}

a=geo_code('대구대학교')
## Skipping install of 'kma2' from a github remote, the SHA1 (d7b37a54) has not changed since last install.
##   Use `force = TRUE` to force installation
## Loading required package: bitops
## 
## Attaching package: 'XML'
## The following object is masked from 'package:rvest':
## 
##     xml
## checking phantomjs versions:
## BEGIN: PREDOWNLOAD
## BEGIN: DOWNLOAD
## BEGIN: POSTDOWNLOAD
## checking Selenium Server versions:
## BEGIN: PREDOWNLOAD
## BEGIN: DOWNLOAD
## BEGIN: POSTDOWNLOAD
## checking chromedriver versions:
## BEGIN: PREDOWNLOAD
## BEGIN: DOWNLOAD
## BEGIN: POSTDOWNLOAD
## checking geckodriver versions:
## BEGIN: PREDOWNLOAD
## BEGIN: DOWNLOAD
## BEGIN: POSTDOWNLOAD
## checking phantomjs versions:
## BEGIN: PREDOWNLOAD
## BEGIN: DOWNLOAD
## BEGIN: POSTDOWNLOAD
## [1] "Connecting to remote server"
## $acceptInsecureCerts
## [1] FALSE
## 
## $acceptSslCerts
## [1] FALSE
## 
## $applicationCacheEnabled
## [1] FALSE
## 
## $browserConnectionEnabled
## [1] FALSE
## 
## $browserName
## [1] "chrome"
## 
## $chrome
## $chrome$chromedriverVersion
## [1] "72.0.3626.7 (efcef9a3ecda02b2132af215116a03852d08b9cb)"
## 
## $chrome$userDataDir
## [1] "C:\\Users\\cj\\AppData\\Local\\Temp\\scoped_dir13424_28015"
## 
## 
## $cssSelectorsEnabled
## [1] TRUE
## 
## $databaseEnabled
## [1] FALSE
## 
## $`goog:chromeOptions`
## $`goog:chromeOptions`$debuggerAddress
## [1] "localhost:57559"
## 
## 
## $handlesAlerts
## [1] TRUE
## 
## $hasTouchScreen
## [1] FALSE
## 
## $javascriptEnabled
## [1] TRUE
## 
## $locationContextEnabled
## [1] TRUE
## 
## $mobileEmulationEnabled
## [1] FALSE
## 
## $nativeEvents
## [1] TRUE
## 
## $networkConnectionEnabled
## [1] FALSE
## 
## $pageLoadStrategy
## [1] "normal"
## 
## $platform
## [1] "Windows NT"
## 
## $proxy
## named list()
## 
## $rotatable
## [1] FALSE
## 
## $setWindowRect
## [1] TRUE
## 
## $takesHeapSnapshot
## [1] TRUE
## 
## $takesScreenshot
## [1] TRUE
## 
## $timeouts
## $timeouts$implicit
## [1] 0
## 
## $timeouts$pageLoad
## [1] 300000
## 
## $timeouts$script
## [1] 30000
## 
## 
## $unexpectedAlertBehaviour
## [1] "ignore"
## 
## $version
## [1] "71.0.3578.98"
## 
## $webStorageEnabled
## [1] TRUE
## 
## $webdriver.remote.sessionid
## [1] "29fb9d228a460be27b490492649e62ac"
## 
## $id
## [1] "29fb9d228a460be27b490492649e62ac"
a
##         name      lat      lon
## 1 대구대학교 35.90217 128.8469