Skip to main content

criminalip.ctidb reader

Project description

Description

This is a Python module for reading CTI DB files.

CTI DB is a binary file format that stores data indexed by IP address subnets (IPv4 only).

Installation

To install ctidb, simply:

$ pip install ctidb

Usage

To use this module, you must first download or create a CTI DB file.

After you have obtained a database and imported the module, call CCtiReader with a path, to the database as the first argument. Optionally, you may pass a mode as the second argument. The modes are exported from ctidb. Valid modes are:

  • MODE_MEMORY - load database into memory. Pure Python.

  • MODE_AUTO - Default.

NOTE: To look up an IP address, use the get method on this object. The method will return the corresponding values for the IP address from the database (e.g., a dictionary for GeoIP2/GeoLite2 databases). If the database does not contain a record for that IP address, the method will return None.

Example

>>> import ctidb
>>>
>>> with ctidb.CCtiReader('criminalip.ctidb') as reader:
>>>
>>>     reader.get('223.26.31.75')
{'country': ... }

Exceptions

The module will return an InvalidDatabaseError if the database is corrupt or otherwise invalid. A ValueError will be thrown if you look up an invalid IP address or an IPv6 address in an IPv4 database.

Requirements

This code requires Python 3.7+. Older versions are not supported.

Versioning

Support

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ctidb-0.0.7.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

ctidb-0.0.7-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file ctidb-0.0.7.tar.gz.

File metadata

  • Download URL: ctidb-0.0.7.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for ctidb-0.0.7.tar.gz
Algorithm Hash digest
SHA256 6f5da9df5f7a32a7dcd7bb5b7ef07d2e4f9531aaf9102beeb60a48534a2a14b6
MD5 e1383ca753f30092d9305acfafa981a5
BLAKE2b-256 16eb18fe01702daf9fa6b63a4511e0fbad8b94d6627dd5d795dd75db39eb660e

See more details on using hashes here.

File details

Details for the file ctidb-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: ctidb-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for ctidb-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 34ab5be77e981d7f3ec212c3fae0c0e6e6827ddcf85f7b0a09def744a16102a3
MD5 cd1d75b26e7fc1cdf1afd0283e59ce41
BLAKE2b-256 7af000c165e44c929afe72809759a1b47b93a2e933e9d51be232d441c2f3b2cf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page