blog.monophile.net

Takaaki Yamamoto

東京工業大学において計算機科学と応用数学を学び、 情報科学芸術大学院大学[IAMAS]においてメディア表現を専攻し修了。 digitiminimi Inc. において、インフラエンジニアとして生計をたててている。

各種環境の構築と管理を承ります。

  • 仮想環境: Openstack, GCP, AWS, Azure, ...
  • アプリケーション: WordPress, GitLab, Redmine, ...

List

GeoIPをPythonから使う

準備

install

$ sudo apt-get install python-geoip

download

次に http://dev.maxmind.com/geoip/geolite ここからIPアドレスと住所のデータをDLする。

wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz

extract

展開してdat/に入れる。

$ gunzip GeoLiteCity.dat.gz
$ mkdir dat
$ mv GeoLiteCity.dat dat/

code

import GeoIP

gip = GeoIP.open("dat/GeoLiteCity.dat", GeoIP.GEOIP_STANDARD)
google = gip.record_by_addr("74.125.235.102")
print str(google).replace(",", "\n")

output

{'city': 'Mountain View'
 'region_name': 'California'
 'region': 'CA'
 'area_code': 650
 'time_zone': 'America/Los_Angeles'
 'longitude': -122.05740356445312
 'metro_code': 807
 'country_code3': 'USA'
 'latitude': 37.4192008972168
 'postal_code': '94043'
 'dma_code': 807
 'country_code': 'US'
 'country_name': 'United States'}