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.109.tar.gz (446.9 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.109-cp310-abi3-win_amd64.whl (517.4 kB view details)

Uploaded CPython 3.10+Windows x86-64

iptocc-3.3.109-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (630.4 kB view details)

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

iptocc-3.3.109-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (629.9 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

iptocc-3.3.109-cp310-abi3-macosx_11_0_arm64.whl (620.2 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

iptocc-3.3.109-cp310-abi3-macosx_10_12_x86_64.whl (619.4 kB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: iptocc-3.3.109.tar.gz
  • Upload date:
  • Size: 446.9 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.109.tar.gz
Algorithm Hash digest
SHA256 90bdfed08e8f780c3d8448cc96e689b7966aca3daf7f060a8ca38fabf8add7d2
MD5 ac938fa9a752b9df96218a30be55b065
BLAKE2b-256 7eea2a8ff927c2716c06ed3d3c45a632d7baba1044d7caa54b43d980fbd898ab

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: iptocc-3.3.109-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 517.4 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.109-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 edb5d59264d1eabf75684922ff8c29e25920cd4664809e8bf241c58f197705b5
MD5 05ddecc1c9bcfbdaf615d147a4493fb2
BLAKE2b-256 f223c374d4327e928d4453767bdeb0d921e5abc79081bd376e9aa6b39a89142a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.109-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cfa063018baa369930469a0c3e5e0bd32991e4ff8ac4c971f9dd5e5f2adc9dff
MD5 6a3cea23f35e0edde348b82d45f4d9f7
BLAKE2b-256 4210f3ad4a67360296d3fb6669d848e20e0a0e0c8d37a532a04b8eff4e82ed0a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.109-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 52b51c74e1e2d07e884d7840c04c71b6465a98342919a32cb282bc7cd27557c0
MD5 d95b722c7c93c67983affea3b4e689db
BLAKE2b-256 bb88312a53f55075eb5613c6778dbb519dcde58ae3200941083ba186de920ff7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.109-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 12829fb7834f7b60fc7050b89ba10c5bd94df031559921ca0b7447960f2f3756
MD5 d30573d50c6a7cd7befaf95a802d6e8f
BLAKE2b-256 63f53b76ee7bf6c1140c9c699ee152be64dbdc710b67b8bea670a8f6ef8250d0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for iptocc-3.3.109-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3e442eb9f5501ddee06d8c2660f641f89a55eb255d958788d506ea8529a85a1b
MD5 d35e1039e7a809c1ce6c48588216e3cf
BLAKE2b-256 5cc480a05b5e2b806a91cc0146a9031a8652785af95d4fb419fa66f38f36ced3

See more details on using hashes here.

Provenance

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

This release

3.3.109 This release

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