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.94.tar.gz (446.3 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.94-cp310-abi3-win_amd64.whl (516.3 kB view details)

Uploaded CPython 3.10+Windows x86-64

iptocc-3.3.94-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (629.0 kB view details)

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

iptocc-3.3.94-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (627.8 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

iptocc-3.3.94-cp310-abi3-macosx_11_0_arm64.whl (619.6 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

iptocc-3.3.94-cp310-abi3-macosx_10_12_x86_64.whl (618.7 kB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for iptocc-3.3.94.tar.gz
Algorithm Hash digest
SHA256 c9515bb81a1ad80bdae1f46685372d47154abdede60139486aabd0bcafbc6d3f
MD5 84e9431df6a7bba12e299c09b4d3ef68
BLAKE2b-256 6cf79fce195730b9cbcd1f4d69e955e24eaab46457b40d56016ac990e5924071

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for iptocc-3.3.94-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 a377b1ba4288c3d0cf90e773f99b2d23bcc8aa6be40bd181eee50f2da4330a17
MD5 a68a00ba032c25831c68163c5431e7fb
BLAKE2b-256 99723d152dc4a87379c5837d4be51cd3c9f5012143a03250587bd7f2821f83fb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.94-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f1482f0d7ae387bad8423e2961bf998fec190e2a5db83a647689645e28123b9c
MD5 2a5f6dff95016fd3d762eb1a8de0be2c
BLAKE2b-256 5109f4d3c975a3b4994d2ab96b3ed3d8413640381b1bd7f4f2cf350a701b1352

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.94-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a05c8acec80ee1423464a220768b08f965bed9e9ef1427aa647a01b0cd6c8235
MD5 16dbe62832d717aafe52b784f21ab2cd
BLAKE2b-256 07bb0fe04192c8325e8d5b143235580256a98da5b6a5a53a390249bcf7fe8b90

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.94-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 52eec61e6d0cfb5b6c2057e5061025cde289fae5caadf73292fb73c36dbe9b49
MD5 b0e901e1287526bc6b64b86081254381
BLAKE2b-256 e2f8d0504ed5487ba614af91752910204494ffddd1a2671a43f72688be790c95

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.94-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2cf8716be58e93d550b12cc27317d2c274e67a6b20056f05e737c2acf9503eed
MD5 b0a2dd86452d70a08d5b43656a6a62b3
BLAKE2b-256 798c8ca9fd14d7d88e376d2fc557ab22d4489d3d82f391a1ce2fa4c5bf97ab99

See more details on using hashes here.

Provenance

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