/ipmap

A cross-platform easy-to-use ip geolocation & mapping tool.

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Docker Image CI CodeQL GitHub top language PyPI PyPI - Status

English简体中文正體中文Lengua españolaDeutscheSvenska한국어Françaisहिन्दीPortuguêsItalianРусскийIndonesianفارسیعربيTürkçePolskie

IPMap geolocates a given ip address/addresses from a file, then generates a leaflet map pin-pointing the location of each ip address on it (with the right argument).

Features

  • Looks up ip address(es) and returns the associated information.
  • Looks up an ip address(es) and returns the associated information then pin points the location of the ip address(es) on a generated leaflet map.
  • Opens Google Earth on the location of the specified ip address(es).
  • Generated maps are saved to the maps directory in the user's home directory which is created on runtime if it does not exist.
  • Does not use external dependencies for the map, instead uses an already written html map template.

Installation

PyPI

IPMap can be installed from PyPI by running the following command in terminal/command prompt

pip install ipmap

GitHub

Or if you prefer to install it from source, you can run the following command

pip install git+https://github.com/rly0nheart/ipmap.git

Build from source

# install poetry
pip install poetry

# clone the project
git clone https://github.com/rly0nheart/ipmap

# move to the ipmap directory
cd ipmap

# build the wheel file
poetry build

# install the built wheel (Linux)
pip install dist/*.whl

# install built wheel (Windows)
pip install .\dist\generated-wheel-file-name.whl

Usage

To see the usage, you can simply run

ipmap --help

The output should look like the following

usage: 
    Geolocate IP Address(es) (with an interactive map)
    --------------------------------------------------
    ipmap <ip> --map

    Open Google Earth on the given coordinates
    --------------------------------------------
    ipmap <ip> --earth

    Lookup IP Address(es) (same as map but without an interactive map)
    ------------------------------------------------------------------
    ipmap <ip> --lookup
    

IPMap (IP Mapper) — by Richard Mwewa (https://about.me/rly0nheart)

positional arguments:
  ip                    target ip address

options:
  -h, --help            show this help message and exit
  -e, --earth           Open Google Earth on the location of a given ip
  -l, --lookup          Lookup an ip (like --map, but without an interactive
                        map)
  -m, --map             Geolocate an ip (with an interactive map)
  -o OUTPUT, --output OUTPUT
                        map output name (default ipmap)
  -v, --version         show program's version number and exit

A cross-platform easy-to-use ip geolocation & mapping tool.

You can also pass a file containing ip addresses to --ip, IPMap will process the file accordingly and read each ip line by line.

Translations

If you'd like to translate the project's README in any language, or if you can improve the (Google translated) translations of the already existing README's, feel free to open a pull request with your translations. I'd be more than happy to include them in the project :).