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
A service to auto provision devices in Aruba Central based on the Geo-IP location

Location Based Provisioning Service for Aruba Central A service to auto provision devices in Aruba Central based on the Geo-IP location Geo-IP auto pr

Will Smith 3 Mar 22, 2022
Zora is a python program that searches for GeoLocation info for given CIDR networks , with options to search with API or without API

Zora Zora is a python program that searches for GeoLocation info for given CIDR networks , with options to search with API or without API Installing a

z3r0day 1 Oct 26, 2021
Python script that can be used to generate latitude/longitude coordinates for GOES-16 full-disk extent.

goes-latlon Python script that can be used to generate latitude/longitude coordinates for GOES-16 full-disk extent. 🌎 πŸ›°οΈ The grid files can be acces

Douglas Uba 3 Apr 06, 2022
geobeam - adds GIS capabilities to your Apache Beam and Dataflow pipelines.

geobeam adds GIS capabilities to your Apache Beam pipelines. What does geobeam do? geobeam enables you to ingest and analyze massive amounts of geospa

Google Cloud Platform 61 Nov 08, 2022
Introduction to Geospatial Analysis in Python

Introduction to Geospatial Analysis in Python This repository is in support of a talk on geospatial data. Data To recreate all of the examples, the da

Dillon Gardner 6 Oct 19, 2022
Python library to decrypt Airtag reports, as well as a InfluxDB/Grafana self-hosted dashboard example

Openhaystack-python This python daemon will allow you to gather your Openhaystack-based airtag reports and display them on a Grafana dashboard. You ca

Bezmenov Denys 19 Jan 03, 2023
A light-weight, versatile XYZ tile server, built with Flask and Rasterio :earth_africa:

Terracotta is a pure Python tile server that runs as a WSGI app on a dedicated webserver or as a serverless app on AWS Lambda. It is built on a modern

DHI GRAS 531 Dec 28, 2022
A ready-to-use curated list of Spectral Indices for Remote Sensing applications.

A ready-to-use curated list of Spectral Indices for Remote Sensing applications. GitHub: https://github.com/davemlz/awesome-ee-spectral-indices Docume

David Montero Loaiza 488 Jan 03, 2023
Interactive Maps with Geopandas

Create Interactive maps πŸ—ΊοΈ with your geodataframe Geopatra extends geopandas for interactive mapping and attempts to wrap the goodness of amazing map

sangarshanan 46 Aug 16, 2022
Solving the Traveling Salesman Problem using Self-Organizing Maps

Solving the Traveling Salesman Problem using Self-Organizing Maps This repository contains an implementation of a Self Organizing Map that can be used

Diego Vicente 3.1k Dec 31, 2022
GeoIP Legacy Python API

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 instal

MaxMind 230 Nov 10, 2022
ProjPicker (projection picker) is a Python module that allows the user to select all coordinate reference systems (CRSs)

ProjPicker ProjPicker (projection picker) is a Python module that allows the user to select all coordinate reference systems (CRSs) whose extent compl

Huidae Cho 4 Feb 06, 2022
Spectral decomposition for characterizing long-range interaction profiles in Hi-C maps

Inspectral Spectral decomposition for characterizing long-range interaction prof

Nezar Abdennur 6 Dec 13, 2022
A simple python script that, given a location and a date, uses the Nasa Earth API to show a photo taken by the Landsat 8 satellite. The script must be executed on the command-line.

What does it do? Given a location and a date, it uses the Nasa Earth API to show a photo taken by the Landsat 8 satellite. The script must be executed

Caio 42 Nov 26, 2022
Track International space station with python

NASA-ISS-tracker Track International space station with python Modules import json import turtle import urllib.request import time import webbrowser i

Nikhil Yadav 8 Aug 12, 2021
prettymaps - A minimal Python library to draw customized maps from OpenStreetMap data.

A small set of Python functions to draw pretty maps from OpenStreetMap data. Based on osmnx, matplotlib and shapely libraries.

Marcelo de Oliveira Rosa Prates 9k Jan 08, 2023
Platform for building statistical models of cities and regions

UrbanSim UrbanSim is a platform for building statistical models of cities and regions. These models help forecast long-range patterns in real estate d

Urban Data Science Toolkit 419 Dec 30, 2022
pure-Python (Numpy optional) 3D coordinate conversions for geospace ecef enu eci

Python 3-D coordinate conversions Pure Python (no prerequistes beyond Python itself) 3-D geographic coordinate conversions and geodesy. API similar to

Geospace code 292 Dec 29, 2022
Focal Statistics

Focal-Statistics The Focal statistics tool in many GIS applications like ArcGIS, QGIS and GRASS GIS is a standard method to gain a local overview of r

Ifeanyi Nwasolu 1 Oct 21, 2021
A toolbox for processing earth observation data with Python.

eo-box eobox is a Python package with a small collection of tools for working with Remote Sensing / Earth Observation data. Package Overview So far, t

13 Jan 06, 2022