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.129.tar.gz (447.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.129-cp310-abi3-win_amd64.whl (521.6 kB view details)

Uploaded CPython 3.10+Windows x86-64

iptocc-3.3.129-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (631.2 kB view details)

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

iptocc-3.3.129-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (631.2 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

iptocc-3.3.129-cp310-abi3-macosx_11_0_arm64.whl (620.7 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

iptocc-3.3.129-cp310-abi3-macosx_10_12_x86_64.whl (620.1 kB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: iptocc-3.3.129.tar.gz
  • Upload date:
  • Size: 447.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.129.tar.gz
Algorithm Hash digest
SHA256 2e9c760a3940dd377f8ad0535975c177c14ce17bd7683935b3b5340ebd35be74
MD5 938237c52aa6091f6ad09dd3cd142367
BLAKE2b-256 d67442c3b35a3739d4ecebb1f9d37887b3246b84a775fe8957d61b1ee06e55ea

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: iptocc-3.3.129-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 521.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.129-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 73fcdad5fe7ec3e3c3b2ccac0404e269a46a14356ce928158baaa07c23bf17c8
MD5 e08a2f0b1c7aab574e488fefff2820eb
BLAKE2b-256 dcaeff04ed62eaadcdf2a02487851562d453cfcd9f836636b2e52c6493756ad1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.129-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0249acd90ac251aa7b0fb1e1b4f3a046c8ec413edefe4b84b148fea4b1efb6d1
MD5 0c81ff758110aa8ec4417876795b4d1a
BLAKE2b-256 a8517a93df9ae2081c9f5339137adf7ce09e9013a9c3fbf1e3e1f0a8debb9a9a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.129-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 407e6b37a4c9e59c3b5b33ddd74353a9d6776dd6000c1a0850abec1b9eafe103
MD5 cac91a1c900a1b12f01e5c6dc3d1395f
BLAKE2b-256 10cd6e956946643af9431d8d91f56608681a2241b6fb560dc69f96f76eb9aeff

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.129-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4b2c71bc4fa6ed94958dc2a5bde7b5fe3333c4b1d1b963140fde6409bf4391e6
MD5 0668944cd223f1e0aac8a8725e635333
BLAKE2b-256 c3ea5cfc677a7b768e0a92a37bee4522547bde13c9fc822fcbc1734acf67d159

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.129-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d86da0ea2b3609df877ff70530e9e7cfed05b5f43393495704f79b4358fbc3e4
MD5 9014ba067f551dd013eda2ae7b220e88
BLAKE2b-256 a58e43ce4dfff541a25c51ada7f3ca528d3b13cae426ebba6cb3ff494c05c708

See more details on using hashes here.

Provenance

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

This release

3.3.129 This release

6 files

3.3.128

6 files

3.3.127

6 files

3.3.126

6 files

3.3.125

6 files

3.3.124

6 files

3.3.123

6 files

3.3.122

6 files

3.3.121

6 files

3.3.120

6 files

3.3.119

6 files

3.3.118

6 files

3.3.117

6 files

3.3.116

6 files

3.3.115

6 files

3.3.114

6 files

3.3.113

6 files

3.3.112

6 files

3.3.111

6 files

3.3.110

6 files

3.3.109

6 files

3.3.108

6 files

3.3.107

6 files

3.3.106

6 files

3.3.105

6 files

3.3.104

6 files

3.3.103

6 files

3.3.102

6 files

3.3.101

6 files

3.3.100

6 files

3.3.99

6 files

3.3.98

6 files

3.3.97

6 files

3.3.96

6 files

3.3.95

6 files

3.3.94

6 files

3.3.93

6 files

3.3.92

6 files

3.3.91

6 files

3.3.90

6 files

3.3.89

6 files

3.3.88

6 files

3.3.87

6 files

3.3.86

6 files

3.3.85

6 files

3.3.84

6 files

3.3.83

6 files

3.3.82

6 files

3.3.81

6 files

3.3.80

6 files

3.3.78

6 files

3.3.77

6 files

3.3.76

6 files

3.3.75

6 files

3.3.74

6 files

3.3.73

6 files

3.3.72

6 files

3.3.71

6 files

3.3.70

6 files

3.3.69

6 files

3.3.68

6 files

3.3.67

6 files

3.3.66

6 files

3.3.65

6 files

3.3.64

6 files

3.3.63

6 files

3.3.62

6 files

3.3.61

6 files

3.3.60

6 files

3.3.59

6 files

3.3.58

6 files

3.3.57

6 files

3.3.56

6 files

3.3.55

6 files

3.3.54

6 files

3.3.53

6 files

3.3.52

6 files

3.3.51

6 files

3.3.50

6 files

3.3.49

6 files

3.3.48

6 files

3.3.47

6 files

3.3.46

6 files

3.3.45

6 files

3.3.44

6 files

3.3.43

6 files

3.3.42

6 files

3.3.41

6 files

3.3.40

6 files

3.3.39

6 files

3.3.38

6 files

3.3.37

6 files

3.3.36

6 files

3.3.35

6 files

3.3.34

6 files

3.3.33

6 files

3.3.32

6 files

3.3.31

6 files

3.3.30

6 files

3.3.29

6 files

3.3.28

6 files

3.3.27

6 files

3.3.26

6 files

3.3.25

6 files

3.3.24

6 files

3.3.23

6 files

3.3.22

6 files

3.3.21

6 files

3.3.20

6 files

3.3.19

6 files

3.3.18

6 files

3.3.17

6 files

3.3.16

6 files

3.3.15

6 files

3.3.14

6 files

3.3.13

6 files

3.3.12

6 files

3.3.11

6 files

3.3.10

6 files

3.3.9

6 files

3.3.8

6 files

3.3.7

6 files

3.3.6

6 files

3.3.5

6 files

3.3.4

6 files

3.3.3

6 files

3.3.2

6 files

3.3.1

6 files

3.3.0

6 files

3.2.3

6 files

3.2.2

6 files

3.2.1

6 files

3.2.0

6 files

3.1.2

6 files

3.1.1

6 files

3.1.0

6 files

3.0.0

6 files

2.1.2

2 files

2.1.1

2 files

2.1.0

2 files

2.0.1

2 files

2.0.0

3 files

1.1.2

1 file

1.0.8

1 file

1.0.7

1 file

1.0.6

1 file

1.0.5

1 file

1.0.4

1 file

1.0.3

1 file

1.0.2

1 file

1.0.1

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page