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

Uploaded CPython 3.10+Windows x86-64

iptocc-3.3.105-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (629.4 kB view details)

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

iptocc-3.3.105-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (628.4 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

iptocc-3.3.105-cp310-abi3-macosx_11_0_arm64.whl (620.0 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

iptocc-3.3.105-cp310-abi3-macosx_10_12_x86_64.whl (619.2 kB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: iptocc-3.3.105.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.105.tar.gz
Algorithm Hash digest
SHA256 deb0c9075520892533eacf61f973772d9874da0b1805a34ddc447370386f4c77
MD5 fc7e7688fe87c34c9949413bb1c46368
BLAKE2b-256 12880800fac467e4bcb422ec4251c881b06cf974187f742c040368dc2a574dac

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: iptocc-3.3.105-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 517.0 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.105-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 b99418a925c6000acf7c35128fd36dbb2f4a86e0fabf35babb7f797cd8cd1972
MD5 95bd28344182da816f2b3a0b608e013c
BLAKE2b-256 5def665a5a081b1ed136838af53fc5e06914ca19b6bd170bf689945b23bdf398

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.105-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2a24dac3a45d2eb78e12b1d3bcdf94d9c9e8a0211cc93ccdcd85cf677482acb0
MD5 c227ae7885980d23a499c4c168bce32f
BLAKE2b-256 dd105d6b178b3cc6dfef2beb651cd9c83b802f3d66b41a8724e0f9ce36a45556

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.105-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bace4205a8882e787830680f7a3df68019403a0ad3c41dc30f5c3b1979a858ce
MD5 ff7680bc1d7f4ab5843c828b36e7bba3
BLAKE2b-256 4bac75f777e376d241ed7891e11d7c5fad4a3e681331347b6f276f29770d7828

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.105-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1ad0646e3ad923442443e291d4536595111b0d2595e67d2a6e4dd4a74b066025
MD5 4f9fbfce44f2f4876f9fc1c3dc55fa12
BLAKE2b-256 a45484a625862f278f8b3984ff3c0c4670cb8549e404e5cc55be998dcd2be4d8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.105-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ce3ce692d08c3ae66e46d51aaf8029f812f5aa1dcf673c685acc7febd8725712
MD5 a09cdbbbaac3824ec788c0a59212d741
BLAKE2b-256 3bf0c54991ad94639269f2120be9b8b1cc109d805a37645e48313baed7cbbda2

See more details on using hashes here.

Provenance

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

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

This release

3.3.105 This release

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