Obyek GeoIP2
dibugnkus untuk MaxMind geoip2 Python library. [1]
Untuk melakukan geolokasi berdasarkan-IP, obyek GeoIP2
membutuhkan geoip2 Python library dan GeoIP Country dan/atau City datasets in binary format (berkas CSV akan tidak bekerja!). Ambil berkas GeoLite2-Country.mmdb.gz
dan GeoLite2-City.mmdb.gz
dan buka mereka dalam direktori berhubungan pada pengaturan GEOIP_PATH
.
Sebagai tambahan, sangat dianjurkan untuk memasang install libmaxminddb C library, sehingga geoip2
dapat mempengaruhi kecepatan tercepat pustaka C.
Ini adalah sebuah contoh penggunaannya:
>>> from django.contrib.gis.geoip2 import GeoIP2
>>> g = GeoIP2()
>>> g.country('google.com')
{'country_code': 'US', 'country_name': 'United States'}
>>> g.city('72.14.207.99')
{'city': 'Mountain View',
'continent_code': 'NA',
'continent_name': 'North America',
'country_code': 'US',
'country_name': 'United States',
'dma_code': 807,
'latitude': 37.419200897216797,
'longitude': -122.05740356445312,
'postal_code': '94043',
'region': 'CA',
'time_zone': 'America/Los_Angeles'}
>>> g.lat_lon('salon.com')
(39.0437, -77.4875)
>>> g.lon_lat('uh.edu')
(-95.4342, 29.834)
>>> g.geos('24.124.1.80').wkt
'POINT (-97 38)'
GeoIP2
(path=None, cache=0, country=None, city=None)¶Obyek GeoIP
tidak membutuhkan parameter apapun untuk menggunakan pengaturan awalan. Bagaimanapun, pada pengaturan GEOIP_PATH
sangat sedikit harus disetel dengan jalur dari tempat dari kumpulan data GeoIP anda. Kata kunci inisialisasi berikut mungkin digunakan untuk menyesuaikan apapun dari awalan.
Argumen Katakunci | Deskripsi |
---|---|
path |
Direktori dasar dimana data GeoIP ditempatkan atau jalur penuh dimana berkas data kota atau negara (.mmdb ) ditempatkan. Anggap dataset kedua kota dan negara ditempatkan dalam direktori ini; timpa pengaturan GEOIP_PATH . |
cache |
Pengaturan cache ketika membuka dataset GeoIP. Mungkin berupa integer dalam (0, 1, 2, 4, 8) berhubungan ke pengaturan API C MODE_AUTO , MODE_MMAP_EXT , MODE_MMAP , dan GEOIP_INDEX_CACHE MODE_MEMORY , masing-masing. Awalan pada 0 (MODE_AUTO ). |
country |
Nama dari berkas data negara GeoIP. Awalan pada GeoLite2-Country.mmdb . Mengatur kata kunci ini menimpa pengaturan GEOIP_COUNTRY . |
city |
Nama dari berkas data kota GeoIP. Awalan pada GeoLite2-City.mmdb . Mengatur kata kunci ini menimpa pengaturan GEOIP_CITY . |
GeoIP2.
open
(path, cache)¶Metode kelas ini memberi contoh obyek GeoIP dari jalur basisdata diberikan dan pengaturan cache diberikan.
Semua permintaan rutin-rutin berikut mungkin mengambil slah satu sebuah string alamat IP atau fully qualified domain name (FQDN). Sebagai contoh, kedua '205.186.163.125'
dan 'djangoproject.com'
akan berupa parameter permintaan sah.
GeoIP2.
city
(query)¶Mengembalikan sebuah dictionary dari informasi kota untuk permintaan yang diberikan. Beberapa dari nilai dalam dictionary mungkin belum ditentukan (None
).
GeoIP2.
country
(query)¶Mengembalikan sebuah dictionary dengan kode negara dan negara untuk permintaan yang diberikan.
GeoIP2.
country_code
(query)¶Mengembalikan kode negara terkait pada permintaan
GeoIP2.
country_name
(query)¶Mengembalikan nama negara terkait pada permintaan
GeoIP2.
coords
(query)¶Mengembalikan sebuah tuple kordinat dari (longitude, latitude).
GeoIP2.
lon_lat
(query)¶Mengembalikan sebuah tuple kordinat dari (longitude, latitude).
GeoIP2.
lat_lon
(query)¶Mengembalikan sebuah tuple kordinat dari (latitude, longitude),
GeoIP2.
geos
(query)¶Mengembalikan obyek Point
terkait pada permintaan
GEOIP_PATH
¶Sebuah string menentukan direktori dimana berkas data GeoIP ditempatkan. Pengaturan ini adalah diwajibkan meskipun secara manual ditentukan dengan kata kunci path
ketika menginisialisasi obyek GeoIP2
.
GEOIP_COUNTRY
¶Namadasar untuk digunakan berkas data negara GeoIP. Nilai awal 'GeoLite2-Country.mmdb'
.
GEOIP_CITY
¶Nama dasar digunakan untuk berkas data kota GeoIP. Awalan pada 'GeoLite2-City.mmdb'
.
Des 02, 2019