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.101.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.101-cp310-abi3-win_amd64.whl (516.6 kB view details)

Uploaded CPython 3.10+Windows x86-64

iptocc-3.3.101-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.101-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (628.2 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.10+macOS 11.0+ ARM64

iptocc-3.3.101-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.101.tar.gz.

File metadata

  • Download URL: iptocc-3.3.101.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.101.tar.gz
Algorithm Hash digest
SHA256 c280e64cc402249c20ec217d5f083be555d14e15d6972cef8a9b3db0bf6070f0
MD5 756ec8fa8b9a4e0b7f91c05053432678
BLAKE2b-256 b1bc5a419e9d18aa6e73171e3036f44961618f3ec98afc13710f226020baabdf

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.101.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.101-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: iptocc-3.3.101-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 516.6 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.101-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 76b174f4f0777e4126ec8502da5ac8378fa59c22671ec00a11aadd92dcb96900
MD5 fe576ef9ffe0020a6f08c7e880aab7dd
BLAKE2b-256 3b3e3f162a3ff420cf22a5a765529c93d8319541f628d4f11d1515891bc8489b

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.101-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.101-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for iptocc-3.3.101-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d22e79c3fd7a32bae1d0dfe184adca3bd28a15a8a0f1dfb14b012f628727008f
MD5 94c94839d69081026931b922968d5eb3
BLAKE2b-256 cfdc9737d118f1d58ebcb1912dab0ead8410e2ff965e5d83ba8c4aadbafd0f14

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.101-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.101-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for iptocc-3.3.101-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2b029bf68ba0b29038b9d76ef425a32b9f27fc72483ce6bbcd26c98593f61c6e
MD5 b2d7f06042efd8db8cbf90fbae309546
BLAKE2b-256 868e49a4fc591bbd2952336e68dc58e8f1edcba2b57f06d66d6e41e89bc2a221

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.101-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.101-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for iptocc-3.3.101-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 47c3524fcac46ef8fbaf02cc4f608fd25c5c56b74ddd105daba375e059574948
MD5 4f59d69ad1b95216910ca55082b3ed7f
BLAKE2b-256 91b9064bb44c78297939853037e08b6a21279d2d7a66389af695d4eba7dba00c

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.101-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.101-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for iptocc-3.3.101-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9ac7bbf4019f0e17e48f645b06da8e4df5cc821a56ac86fdfaf65138287a803c
MD5 cbe2969b7812f6b16c452b0589a25df3
BLAKE2b-256 93730bbdd92051bf029b3b0707c5cdd24f4a226256b1f8ce2a4285a2e08a16a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for iptocc-3.3.101-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