rgeolocate パッケージ

estis2018/10/28 (日) 11:53 に投稿

R でIPアドレスから国名など情報を取得するのに、 rgeolocate パッケージというものがあった。

https://cran.r-project.org/web/packages/rgeolocate/rgeolocate.pdf

 

インストール
install.packages("rgeolocate")

読み込み
library(rgeolocate)

 

ip_api 関数
http://ip-api.com/docs/ を利用する

> ip_api("203.142.205.135")
                    as_code city_name country_name country_code                      isp latitude longitude             organisation region_code region_name   timezone zip_code  status
1 AS24282 KAGOYA JAPAN Inc.     Kyoto        Japan           JP Kagoya Japan Corporation  35.0214  135.7556 Kagoya Japan Corporation          26       Kyoto Asia/Tokyo 600-8106 success
> ip_api("2406:8c00:0:2135:205:135::")
                    as_code city_name country_name country_code          isp latitude longitude organisation region_code region_name   timezone zip_code  status
1 AS24282 KAGOYA JAPAN Inc.    Sugito        Japan           JP Kagoya Japan  36.0333  139.7333 Kagoya Japan          11     Saitama Asia/Tokyo 345-0036 success

 

dp_ip 関数
https://db-ip.com/api/free.php を利用する
無償APIキーでは、1,000リクエスト/日
有償APIキーを使えば、より詳細な情報が取得できる

> db_ip("203.142.205.135", "free")
[[1]]
              address               country             stateprov                  city 
    "203.142.205.135"                  "JP"               "Aichi" "Ichinomiya (Kagoya)" 

> db_ip("2406:8c00:0:2135:205:135::", "free")
[[1]]
                     address                      country                    stateprov                         city 
"2406:8c00:0:2135:205:135::"                         "JP"                      "Tokyo"                    "Chiyoda" 

 

ip2location 関数、maxmind 関数 もあるが、これらはファイルを用意しないといけない