GeoIP Legacy Python API

Overview

MaxMind GeoIP Legacy Python Extension API

Requirements

  • Python 2.5+ or 3.3+
  • GeoIP Legacy C Library 1.4.7 or greater

Installation

With pip:

$ pip install GeoIP

From source:

$ python setup.py build
$ python setup.py install

IP Geolocation Usage

IP geolocation is inherently imprecise. Locations are often near the center of the population. Any location provided by a GeoIP database should not be used to identify a particular address or household.

Usage

See the examples in the examples folder.

Troubleshooting

If you get a "libGeoIP.so.1: cannot open shared object No such file or directory" error, add /usr/local/lib to /etc/ld.so.conf then run /sbin/ldconfig /etc/ld.so.conf

License

Copyright (c) 2014 MaxMind LLC

All rights reserved. This package is free software; it is licensed under the LGPL 2.1 or greater.

Comments
  • GeoIP doesn't build on OSX 10.9

    GeoIP doesn't build on OSX 10.9

    Pip install fails with the following output:

    building 'GeoIP' extension
        /usr/bin/clang -fno-strict-aliasing -fno-common -dynamic -pipe -Os -fwrapv -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/opt/local/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c py_GeoIP.c -o build/temp.macosx-10.9-x86_64-2.7/py_GeoIP.o -fno-strict-aliasing
        py_GeoIP.c:23:10: fatal error: 'GeoIP.h' file not found
        #include "GeoIP.h"
                 ^
        1 error generated.
        error: command '/usr/bin/clang' failed with exit status 1
        Complete output from command /mnt/bin/python -c "import setuptools, tokenize;__file__='/mnt/build/GeoIP/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/z5/wdtm1zm57bb99dq2nztfcf2m0000gn/T/pip-Mk_hHx-record/install-record.txt --single-version-externally-managed --compile --install-headers /mnt/bin/../include/site/python2.7:
    
    opened by rickeyski 9
  • Python 3 support

    Python 3 support

    Please consider these changes, which collectively add Python 3 support. The bulk of the work is modernizing CAPI use to the >=2.6 standard; the only Py3-specific changes are related to str/unicode and the different signature for module initialization.

    opened by zackw 9
  • MacOs Install Fail

    MacOs Install Fail

    I am installing using pip3 install geoip or sudo pip3 install geoip. I get this that makes it fail.

    ERROR: Command errored out with exit status 1: command: /Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/tmp/pip-install-k23lgxdu/geoip/setup.py'"'"'; file='"'"'/private/tmp/pip-install-k23lgxdu/geoip/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record /private/tmp/pip-record-e5rjznon/install-record.txt --single-version-externally-managed --compile --install-headers /Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/GeoIP cwd: /private/tmp/pip-install-k23lgxdu/geoip/ Complete output (15 lines): /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/dist.py:274: UserWarning: Unknown distribution option: 'bugtrack_url' warnings.warn(msg) Warning: 'classifiers' should be a list, got type 'tuple' running install running build running build_ext building 'GeoIP' extension creating build creating build/temp.macosx-10.9-x86_64-3.9 gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9 -c py_GeoIP.c -o build/temp.macosx-10.9-x86_64-3.9/py_GeoIP.o py_GeoIP.c:23:10: fatal error: 'GeoIP.h' file not found #include "GeoIP.h" ^~~~~~~~~ 1 error generated. error: command '/usr/bin/gcc' failed with exit code 1 ---------------------------------------- ERROR: Command errored out with exit status 1: /Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/tmp/pip-install-k23lgxdu/geoip/setup.py'"'"'; file='"'"'/private/tmp/pip-install-k23lgxdu/geoip/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record /private/tmp/pip-record-e5rjznon/install-record.txt --single-version-externally-managed --compile --install-headers /Library/Frameworks/Python.framework/Versions/3.9/include/python3.9/GeoIP Check the logs for full command output.

    opened by RocketNinja15 6
  • Encoding fixes for python 3.4

    Encoding fixes for python 3.4

    In python 3.x PyUnicode_FromString() function accepts an UTF-8 encoded strings only. But country_code, country_name, country_continent are all ISO-8859-1 encoded. This commit fixes the issue.

    Before fix:

    Python 3.4.1 (default, Aug 21 2014, 16:21:32) 
    [GCC 4.6.3] on linux
    >>> import GeoIP
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe7 in position 4: invalid continuation byte
    

    After fix:

    Python 3.4.1 (default, Aug 21 2014, 16:20:07) 
    [GCC 4.6.3] on linux
    >>> import GeoIP
    >>> GeoIP.country_names['CW']
    'Curaçao' 
    
    opened by sfarbotka 5
  • GeoIP.c:23:10: fatal error: GeoIP.h: No such file or directory    23 | #include

    GeoIP.c:23:10: fatal error: GeoIP.h: No such file or directory 23 | #include "GeoIP.h"while trying to install GeoIP package for python PART 2

    I want install this python dependency (GeoIP) for one of my tools. I installed GeoIP-1.3.2 from here https://pypi.org/project/GeoIP/#files and i'm getting this error again and again when im writing this code "sudo python3 setup.py install" and im getting this error [email protected]:~/Downloads/GeoIP-1.3.2# sudo python3 setup.py install /usr/lib/python3.9/distutils/dist.py:274: UserWarning: Unknown distribution option: 'bugtrack_url' warnings.warn(msg) Warning: 'classifiers' should be a list, got type 'tuple' running install running bdist_egg running egg_info writing GeoIP.egg-info/PKG-INFO writing dependency_links to GeoIP.egg-info/dependency_links.txt writing top-level names to GeoIP.egg-info/top_level.txt reading manifest file 'GeoIP.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'ChangeLog' writing manifest file 'GeoIP.egg-info/SOURCES.txt' installing library code to build/bdist.linux-x86_64/egg running install_lib running build_ext building 'GeoIP' extension x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -ffile-prefix-map=/build/python3.9-RNBry6/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -ffile-prefix-map=/build/python3.9-RNBry6/python3.9-3.9.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.9 -c py_GeoIP.c -o build/temp.linux-x86_64-3.9/py_GeoIP.o py_GeoIP.c:23:10: fatal error: GeoIP.h: No such file or directory 23 | #include "GeoIP.h" | ^~~~~~~~~ compilation terminated. error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1 PLEASE HELP I NEED THAT TOOL VERY BADLY

    opened by FrankensteinEvil0069 4
  • cannot install pip geoip!

    cannot install pip geoip!

    sudo pip install geoip
    Collecting geoip
      Using cached https://files.pythonhosted.org/packages/f2/7b/a463b7c3df8ef4b9c92906da29ddc9e464d4045f00c475ad31cdb9a97aae/GeoIP-1.3.2.tar.gz
      Running setup.py (path:/tmp/pip-install-Gu5vyc/geoip/setup.py) egg_info for package geoip produced metadata for project name geoIp. Fix your #egg=geoip fragments.                                                            
    Building wheels for collected packages: geoIp, geoIp
      Running setup.py bdist_wheel for geoIp ... error
      Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-Gu5vyc/geoip/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/pip-wheel-d4TgHm --python-tag cp27:
      /usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'
        warnings.warn(msg)
      running bdist_wheel
      running build
      running build_ext
      building 'GeoIP' extension
      creating build
      creating build/temp.linux-x86_64-2.7
      x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-07FOaN/python2.7-2.7.17=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c py_GeoIP.c -o build/temp.linux-x86_64-2.7/py_GeoIP.o -fno-strict-aliasing
      py_GeoIP.c:23:10: fatal error: GeoIP.h: BΓΆyle bir dosya ya da dizin yok
         23 | #include "GeoIP.h"
            |          ^~~~~~~~~
      compilation terminated.
      error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
      
      ----------------------------------------
      Failed building wheel for geoIp
      Running setup.py clean for geoIp
      Running setup.py bdist_wheel for geoIp ... error
      Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-Gu5vyc/geoip/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/pip-wheel-7_QeFg --python-tag cp27:
      /usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'
        warnings.warn(msg)
      running bdist_wheel
      running build
      running build_ext
      building 'GeoIP' extension
      creating build
      creating build/temp.linux-x86_64-2.7
      x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-07FOaN/python2.7-2.7.17=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c py_GeoIP.c -o build/temp.linux-x86_64-2.7/py_GeoIP.o -fno-strict-aliasing
      py_GeoIP.c:23:10: fatal error: GeoIP.h: BΓΆyle bir dosya ya da dizin yok
         23 | #include "GeoIP.h"
            |          ^~~~~~~~~
      compilation terminated.
      error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
      
      ----------------------------------------
      Failed building wheel for geoIp
      Running setup.py clean for geoIp
    Failed to build geoIp geoIp
    Installing collected packages: geoIp
      Running setup.py install for geoIp ... error
        Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-Gu5vyc/geoip/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-record-2WSvBi/install-record.txt --single-version-externally-managed --compile:
        /usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'
          warnings.warn(msg)
        running install
        running build
        running build_ext
        building 'GeoIP' extension
        creating build
        creating build/temp.linux-x86_64-2.7
        x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-07FOaN/python2.7-2.7.17=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c py_GeoIP.c -o build/temp.linux-x86_64-2.7/py_GeoIP.o -fno-strict-aliasing
        py_GeoIP.c:23:10: fatal error: GeoIP.h: BΓΆyle bir dosya ya da dizin yok
           23 | #include "GeoIP.h"
              |          ^~~~~~~~~
        compilation terminated.
        error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
        
        ----------------------------------------
    Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-Gu5vyc/geoip/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-record-2WSvBi/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-install-Gu5vyc/geoip/
    
    opened by azamet90 4
  • Question: Any Security Reason For Python3?

    Question: Any Security Reason For Python3?

    I hope you don't mind a question here?

    Is there any reason to switch to the latest 1.3.2 for any security reasons?

    I'm only going to use GeoIP for the P2P app nicotine;

    https://github.com/eLvErDe/nicotine-plus

    I'm using at present GeoIP 1.6.7, so not sure if there's any real benefit from 1.2.9 to 1.3.2, in regards to what I'm doing here?

    Thank you very much for your time and help.

    opened by ghost 4
  • Upload wheels for Python 2

    Upload wheels for Python 2

    I need to run the legacy code that uses GeoIP, and I have problems getting all the dependencies (gcc and libs) for GeoIP right. Is it possible to upload wheels for Python2 to PyPI?

    opened by abitrolly 3
  • py_GeoIP.c:23:19: fatal error: GeoIP.h: No such file or directory

    py_GeoIP.c:23:19: fatal error: GeoIP.h: No such file or directory

    Hi,

    Im so sorry. I can't build the package. I dont find the header file.

    /usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url' warnings.warn(msg) running build running build_ext building 'GeoIP' extension creating build creating build/temp.linux-i686-2.7 gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c py_GeoIP.c -o build/temp.linux-i686-2.7/py_GeoIP.o -fno-strict-aliasing py_GeoIP.c:23:19: fatal error: GeoIP.h: No such file or directory compilation terminated. error: command 'gcc' failed with exit status 1

    opened by ghost 3
  • can not install ?

    can not install ?

    Both pip install GeoIP and install from source (GeoIP-1.3.2)

    GOT THIS FATAL ERROR:

    py_GeoIP.c:21:20: fatal error: Python.h: No such file or directory

    #include <Python.h>
    ^

    compilation terminated.

    error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

    opened by vince67 3
  • install fails on python 3.7+

    install fails on python 3.7+

    Here is the error:

    Ignoring funcsigs: markers 'python_version < "3.0"' don't match your environment
      🐍   β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰ 45/45 β€” 00:00:05
    An error occurred while installing geoip==1.3.2 --hash=sha256:a890da6a21574050692198f14b07aa4268a01371278dfc24f71cd9bc87ebf0e6! Will try again.
    Ignoring ruamel.ordereddict: markers 'platform_python_implementation == "CPython" and python_version <= "2.7"' don't match your environment
    Installing initially failed dependencies...
    [pipenv.exceptions.InstallError]:   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pipenv/core.py", line 1874, in do_install
    [pipenv.exceptions.InstallError]:       keep_outdated=keep_outdated
    [pipenv.exceptions.InstallError]:   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pipenv/core.py", line 1253, in do_init
    [pipenv.exceptions.InstallError]:       pypi_mirror=pypi_mirror,
    [pipenv.exceptions.InstallError]:   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pipenv/core.py", line 859, in do_install_dependencies
    [pipenv.exceptions.InstallError]:       retry_list, procs, failed_deps_queue, requirements_dir, **install_kwargs
    [pipenv.exceptions.InstallError]:   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pipenv/core.py", line 763, in batch_install
    [pipenv.exceptions.InstallError]:       _cleanup_procs(procs, not blocking, failed_deps_queue, retry=retry)
    [pipenv.exceptions.InstallError]:   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pipenv/core.py", line 681, in _cleanup_procs
    [pipenv.exceptions.InstallError]:       raise exceptions.InstallError(c.dep.name, extra=err_lines)
    
    opened by allnash 2
Releases(v1.3.2)
  • v1.3.2(Aug 22, 2014)

    • The description for org_by_name incorrectly directed people to use name_by_addr rather than name_by_name.
    • Previously GeoIP.country_names was populated from GeoIP_country_name in the libGeoIP C API. Some versions of the libGeoIP include non-ASCII ISO-8859-1 characters in these names, causing encoding errors under Python
      1. When installed under Python 3, this API now uses UTF-8 country names to populate this dict. Reported and fixed by Sergey Farbotka. GitHub PR #15.
    Source code(tar.gz)
    Source code(zip)
  • v1.3.1(Mar 21, 2014)

    Strings with non-ASCII characters would throw a UTF-8 decoding error. In Python 3, all strings from the database are in UTF-8 and using set_charset to set the character set to something other than UTF-8 will throw an ValueError exception.

    Source code(tar.gz)
    Source code(zip)
  • v1.3.0(Mar 21, 2014)

    • Python 3 support and significant code cleanup. ( Zack Weinberg )
    • The methods name_by_addr, name_by_addr_v6, name_by_name, and name_by_name_v6 were added for ISP, Org, and ASNum lookups. ( Carlos Rodrigues )
    • Portability fixes.
    • Expose GEOIP_MMAP_CACHE from the C library. ( George Macon )
    • Unit tests were added.
    Source code(tar.gz)
    Source code(zip)
  • v1.2.8(Jul 8, 2013)

  • v1.2.7(Jul 8, 2013)

  • v1.2.6(Jul 8, 2013)

  • v1.2.5(Jul 8, 2013)

    • Remove Confidence and Accuracy Database it is unsued anyway. ( Boris Zentner )
    • Add new methods enable_teredo, teredo, time_zone_by_country_and_region and lib_version ( Boris Zentner )
    • Add support for Confidence and Accuracy Database.
    • Add support for Netspeed Database. via: id_by_addr id_by_name
    • Add IPv6 glue *** needs libGeoIP 1.4.7 *** country_code_by_name_v6 country_name_by_name_v6 country_code_by_addr_v6 country_name_by_addr_v6 ( Boris Zentner )
    Source code(tar.gz)
    Source code(zip)
Owner
MaxMind
MaxMind
Open GeoJSON data on geojson.io

geojsonio.py Open GeoJSON data on geojson.io from Python. geojsonio.py also contains a command line utility that is a Python port of geojsonio-cli. Us

Jacob Wasserman 114 Dec 21, 2022
Evaluation of file formats in the context of geo-referenced 3D geometries.

Geo-referenced Geometry File Formats Classic geometry file formats as .obj, .off, .ply, .stl or .dae do not support the utilization of coordinate syst

Advanced Information Systems and Technology 11 Mar 02, 2022
WIP: extracting Geometry utilities from datacube-core

odc.geo This is still work in progress. This repository contains geometry related code extracted from Open Datacube. For details and motivation see OD

Open Data Cube 34 Jan 09, 2023
🌐 Local tile server for viewing geospatial raster files with ipyleaflet or folium

🌐 Local Tile Server for Geospatial Rasters Need to visualize a rather large (gigabytes) raster you have locally? This is for you. A Flask application

Bane Sullivan 192 Jan 04, 2023
Python script to locate mobile number

Python script to locate mobile number How to use this script run the command to install the required libraries pip install -r requirements.txt run the

Shekhar Gupta 8 Oct 10, 2022
Django model field that can hold a geoposition, and corresponding widget

django-geoposition A model field that can hold a geoposition (latitude/longitude), and corresponding admin/form widget. Prerequisites Starting with ve

Philipp Bosch 324 Oct 17, 2022
Python package for earth-observing satellite data processing

Satpy The Satpy package is a python library for reading and manipulating meteorological remote sensing data and writing it to various image and data f

PyTroll 882 Dec 27, 2022
Rasterio reads and writes geospatial raster datasets

Rasterio Rasterio reads and writes geospatial raster data. Geographic information systems use GeoTIFF and other formats to organize and store gridded,

Mapbox 1.9k Jan 07, 2023
Map Ookla server locations as a Kernel Density Estimation (KDE) geographic map plot.

Ookla Server KDE Plotting This notebook was created to map Ookla server locations as a Kernel Density Estimation (KDE) geographic map plot. Currently,

Jonathan Lo 1 Feb 12, 2022
Ingest and query genomic intervals from multiple BED files

Ingest and query genomic intervals from multiple BED files.

4 May 29, 2021
Location field and widget for Django. It supports Google Maps, OpenStreetMap and Mapbox

django-location-field Let users pick locations using a map widget and store its latitude and longitude. Stable version: django-location-field==2.1.0 D

Caio Ariede 481 Dec 29, 2022
Advanced raster and geometry manipulations

buzzard In a nutshell, the buzzard library provides powerful abstractions to manipulate together images and geometries that come from different kind o

Earthcube Lab 30 Jun 20, 2022
When traveling in the backcountry during winter time, updating yourself on current and recent weather data is important to understand likely avalanche danger.

Weather Data When traveling in the backcountry during winter time, updating yourself on current and recent weather data is important to understand lik

Trevor Allen 0 Jan 02, 2022
User friendly Rasterio plugin to read raster datasets.

rio-tiler User friendly Rasterio plugin to read raster datasets. Documentation: https://cogeotiff.github.io/rio-tiler/ Source Code: https://github.com

372 Dec 23, 2022
A trivia questions about Europe

EUROPE TRIVIA QUIZ IN PYTHON Project Outline Ask user if he / she knows more about Europe. If yes show the Trivia main screen, else show the end Trivi

David Danso 1 Nov 17, 2021
A multi-page streamlit app for the geospatial community.

A multi-page streamlit app for the geospatial community.

Qiusheng Wu 522 Dec 30, 2022
Automated download of LANDSAT data from USGS website

LANDSAT-Download It seems USGS has changed the structure of its data, and so far, I have not been able to find the direct links to the products? Help

Olivier Hagolle 197 Dec 30, 2022
Code and coordinates for Matt's 2021 xmas tree

xmastree2021 Code and coordinates for Matt's 2021 xmas tree This repository contains the code and coordinates used for Matt's 2021 Christmas tree, as

Stand-up Maths 117 Jan 01, 2023
Python tools for geographic data

GeoPandas Python tools for geographic data Introduction GeoPandas is a project to add support for geographic data to pandas objects. It currently impl

GeoPandas 3.5k Jan 03, 2023
A Jupyter - Leaflet.js bridge

ipyleaflet A Jupyter / Leaflet bridge enabling interactive maps in the Jupyter notebook. Usage Selecting a basemap for a leaflet map: Loading a geojso

Jupyter Widgets 1.3k Dec 27, 2022