小编Tom*_*ngl的帖子

R中的地址解析IP地址

我已经使用freegeoip.net编写了以下简短代码,以实现IP地址的地理编码自动化(默认情况下每小时15,000个查询;优质的服务!):

> library(RCurl)
Loading required package: bitops
> ip.lst = 
c("193.198.38.10","91.93.52.105","134.76.194.180","46.183.103.8")
> q = do.call(rbind, lapply(ip.lst, function(x){ 
  try( data.frame(t(strsplit(getURI(paste0("freegeoip.net/csv/", x)), ",")[[1]]), stringsAsFactors = FALSE) ) 
}))
> names(q) = c("ip","country_code","country_name","region_code","region_name","city","zip_code","time_zone","latitude","longitude","metro_code")
> str(q)
'data.frame':   4 obs. of  11 variables:
$ ip          : chr  "193.198.38.10" "91.93.52.105" "134.76.194.180" "46.183.103.8"
$ country_code: chr  "HR" "TR" "DE" "DE"
$ country_name: chr  "Croatia" "Turkey" "Germany" "Germany"
$ region_code : chr  "" "06" "NI" ""
$ region_name : chr  "" "Ankara" "Lower Saxony" ""
$ city        : …
Run Code Online (Sandbox Code Playgroud)

ip r geocode rcurl

2
推荐指数
1
解决办法
713
查看次数

标签 统计

geocode ×1

ip ×1

r ×1

rcurl ×1