Skip to main content

iptocc

PyPI Python License

Python bindings for the iptocc Rust crate. Offline IPv4 and IPv6 to ISO 3166-1 alpha-2 country code lookup.

Note: Country codes reflect the country assigned by a Regional Internet Registry (RIR) to each IP block, not where the block is being used. RIR data agrees with MaxMind for ~95% of IPv4 addresses and has minimal discrepancies for IPv6 (Zander, 2012).

Important: iptocc 3.0 is a complete Rust rewrite. Versions 2.x and earlier were pure Python on top of pandas. The public API stays mostly compatible (see migration notes below), single-lookup latency dropped from ~78 ms to ~44-141 ns, and a batch API was added.

Features

  • Offline lookup, no API keys, no network calls
  • IPv4 and IPv6 in one call
  • Single string OR batch (any iterable of strings)
  • Lookup data embedded in the wheel; no runtime file I/O
  • iptocc CLI installed with pip install iptocc
  • Data refreshed nightly from the five Regional Internet Registries

Install

Requires Python 3.10 or newer.

pip install iptocc

Usage

from iptocc import country_code

country_code("8.8.8.8")                       # "US"
country_code(["8.8.8.8", "1.0.16.1"])         # ["US", "JP"]

A CLI is installed alongside the library:

$ iptocc 8.8.8.8 1.0.16.1
8.8.8.8 US
1.0.16.1 JP

Migrating from 2.x

# 2.x
from iptocc import get_country_code, CountryCodeNotFound
try:
    cc = get_country_code("8.8.8.8")
except CountryCodeNotFound:
    cc = None

# 3.x
from iptocc import country_code
cc = country_code("8.8.8.8")  # returns None on miss

See also

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iptocc-3.3.102.tar.gz (446.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

iptocc-3.3.102-cp310-abi3-win_amd64.whl (516.8 kB view details)

Uploaded CPython 3.10+Windows x86-64

iptocc-3.3.102-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (629.3 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

iptocc-3.3.102-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (628.3 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

iptocc-3.3.102-cp310-abi3-macosx_11_0_arm64.whl (619.8 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

iptocc-3.3.102-cp310-abi3-macosx_10_12_x86_64.whl (619.0 kB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file iptocc-3.3.102.tar.gz.

File metadata

  • Download URL: iptocc-3.3.102.tar.gz
  • Upload date:
  • Size: 446.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for iptocc-3.3.102.tar.gz
Algorithm Hash digest
SHA256 adda124ccbb06b6a1d09be534dbd93e3c52b7063719f9334206e3ff82964e99f
MD5 80f46fa6a1c6e84b2953a8fe1fdf07ba
BLAKE2b-256 bae3bf9d342e2786f7286962385e4b3c80396d334208cdd1798ed0b999de1739

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.102.tar.gz:

Publisher: publish-pypi.yml on roniemartinez/IPToCC

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file iptocc-3.3.102-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: iptocc-3.3.102-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 516.8 kB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for iptocc-3.3.102-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 1205f99122f645c95e9ec0296cc6d686152238ee1f1bc599a342a4e145733521
MD5 7428e666bd78faf1afbbe31d2c98684f
BLAKE2b-256 6dd7832e74e04abcb3fd24028c7cb707c3dd708ba34154735ce9011c65d7a31f

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.102-cp310-abi3-win_amd64.whl:

Publisher: publish-pypi.yml on roniemartinez/IPToCC

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file iptocc-3.3.102-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for iptocc-3.3.102-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1e694be331d293f1c97c3b8f19f7ba8c88ba4ba7e719a8793cbaf2a77782d23c
MD5 d88a730965af895a744eb741f29962a8
BLAKE2b-256 c714c89bf228c1deb6ac4039f66ff03bfdd2f9720af4c43c86fa7af1d2beb011

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.102-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on roniemartinez/IPToCC

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file iptocc-3.3.102-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for iptocc-3.3.102-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c40d32ebf750d6d39bb6a0a3dbf919ae0129a03c0dc00076671fd0bf14f105d2
MD5 b8a4cf776d0349ac5e2e43e79cc9807e
BLAKE2b-256 d7ec1354f9ca344c6013cc5e756c0bd5beb0b9997e4e19b38b5ce896d480324f

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.102-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on roniemartinez/IPToCC

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file iptocc-3.3.102-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for iptocc-3.3.102-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bc77062a7f36603106baf7ff386abfe3e037d8d8878dfc2bcf2a3207e0a56b04
MD5 251bde0fe5bf219c197d6d47db77ac63
BLAKE2b-256 091b8a2c56f3b1fa1fccd88ea0db717e0615650dff49cd721757c284aceba910

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.102-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on roniemartinez/IPToCC

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file iptocc-3.3.102-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for iptocc-3.3.102-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8183ab178de24a184e0270833376eefdb27dc15b2db30312c4f7115dea2056cd
MD5 3da90ca5146a907fb692c6cb1f65178d
BLAKE2b-256 53015612d73d8db1484506b0103abbc1f2c48253a618f9534ba38af1a07300fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.102-cp310-abi3-macosx_10_12_x86_64.whl:

Publisher: publish-pypi.yml on roniemartinez/IPToCC

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page