Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/kalekseev/django-geoipdb-loader

Helps download and keep updated maxmind's geoip db required for django GeoIP
https://github.com/kalekseev/django-geoipdb-loader

Last synced: 7 days ago
JSON representation

Helps download and keep updated maxmind's geoip db required for django GeoIP

Awesome Lists containing this project

README

        

======================
Django GeoIP DB Loader
======================

.. start-badges

.. list-table::
:stub-columns: 1

* - tests
- | |travis| |coveralls|

.. |travis| image:: https://travis-ci.org/kalekseev/django-geoipdb-loader.svg?branch=master
:alt: Travis-Ci Build Status
:target: https://travis-ci.org/kalekseev/django-geoipdb-loader

.. |coveralls| image:: https://coveralls.io/repos/github/kalekseev/django-geoipdb-loader/badge.svg?branch=master
:alt: Coverage Status
:target: https://coveralls.io/repos/github/kalekseev/django-geoipdb-loader

.. end-badges

Helps download and keep updated maxmind's geoip db required for `django GeoIP `_

For Django 2.2+ and python 3.6+. For older versions use `pip install django-geoipdb-loader<1.0`.

Why and when to use?
====================

If you don't mind installing and configuring
`official geoipupdate `_ on your server
then I'd recommend to use it.
If you want a simple method to download db files via django command or schedule
updates using celery then this app is the way to go.

Installation
============

Using pip::

pip install django-geoipdb-loader

Add the app to INSTALLED_APPS and configure GEOIP_PATH::

INSTALLED_APPS = [
...
geoipdb_loader,
...
]

GEOIP_PATH = '/myproject/geoip'
MAXMIND_LICENSE_KEY = 'your license key'

Usage
=====

Run :code:`manage.py download_geoipdb` to download geoip files.

In order to automatically update the geoip files you can use provided celery task::

CELERYBEAT_SCHEDULE = {
'update-geoipdb': {
'task': 'geoipdb_loader.tasks.update_geoipdb',
'schedule': crontab(day_of_week=6),
},
}

or crontab::

* * * * 6 manage.py download_geoipdb