Web Crawler с использованием R - PullRequest
0 голосов
/ 08 июня 2018

Я хочу создать веб-сканер, используя программу R для веб-сайта "https://www.latlong.net/convert-address-to-lat-long.html",, которая может посещать веб-сайт с параметром для адреса, а затем извлекать сгенерированные широту и долготу с сайта. И это будет повторяться для длинынабора данных, который у меня есть.

Поскольку я новичок в области сканирования веб-страниц, я буду обращаться за советом.

Заранее спасибо.

1 Ответ

0 голосов
/ 08 июня 2018

В прошлом я использовал API, называемый стек IP (ipstack.com).

Пример: фрейм данных «d», который содержит столбец IP-адресов с именем «ipAddress»

for(i in 1:nrow(d)){
  #get data from API and save the text to variable 'str'
  lookupPath <- paste("http://api.ipstack.com/", d$ipAddress[i], "?access_key=INSERT YOUR API KEY HERE&format=1", sep = "")
  str <- readLines(lookupPath)

  #save all the data to a file
  f <- file(paste(i, ".txt", sep = ""))
  writeLines(str,f)
  close(f)

  #save data to main data frame 'd' as well:
  d$ipCountry[i]<-str[7]
  print(paste("Successfully saved ip #:", i))
}

В этом примере я был специально указан для местоположения Country каждого IP, которыйпоявляется в строке 7 данных, возвращаемых API (отсюда и str [7])

. Этот API позволяет бесплатно искать 10000 адресов в месяц, что было достаточно для моих целей.

...