whoisit
A Python client to RDAP WHOIS-like services for internet resources.
What it is and what it does
whoisit is a Python client library that abstracts over the RDAP protocol to query internet resource registries. It handles the bootstrapping logic (determining which RDAP service to query for a given resource) and parses RDAP JSON responses into flat dictionaries, so you don't have to implement HTTP routing and JSON extraction yourself. The library supports lookups for autonomous system numbers (ASNs), domain registrations, IPv4/IPv6 addresses and CIDR blocks, and entity handles across regional internet registries (ARIN, RIPE, APNIC, LACNIC, AFRINIC).
It offers both synchronous and asynchronous query methods, with options to retrieve raw RDAP JSON, follow related RDAP endpoints for richer domain data, and work around weak SSL implementations on some registry servers. The library is pure Python with minimal dependencies and requires Python 3.10 or later.
Use it for:
- Look up ASN ownership and details to identify which organization operates a given autonomous system.
- Resolve domain registration data including nameservers and registrar information via RDAP.
- Query IP address allocation and ownership to determine which RIR and organization manages a given IP or CIDR block.
- Retrieve entity contact and administrative information by entity handle across regional registries.
- Build bulk IP or domain reconnaissance tools that need current, authoritative registry data.
- Implement async batch lookups for network monitoring or security scanning workflows.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Query RDAP (Registration Data Access Protocol) services to look up internet resource information—ASNs, domains, IP addresses, and entities—returning parsed results as dictionaries.
Yes, if you need to query RDAP services for internet resource data. The library is actively maintained, has low install friction, and handles the bootstrapping and parsing complexity that would otherwise require manual HTTP and JSON work. Verify the license terms in the repository first, since the package metadata does not record them. No known security vulnerabilities.
Install
whoisit on PyPI
pip
pip install whoisituv
uv add whoisitpoetry
poetry add whoisitInstalling whoisit
Before you install
Low install friction with a pure-Python wheel and five standard runtime dependencies (httpx, requests, urllib3, python-dateutil, typing-extensions). Active maintenance with a recent commit on 2026-07-30 and steady releases.
License in practice
License treatment is unclear—no SPDX identifier or raw license text is recorded in the package metadata, so you should verify the actual license terms in the repository before adopting this package.
Quickstart
pip install whoisit
import whoisit
whoisit.bootstrap()
results = whoisit.asn(1234)
print(results['name'])
Requires Python 3.10 or later. Bootstrap data must be fetched once before queries; async variants (asn_async, domain_async, ip_async, entity_async) are available.
Verify before relying
- Whether the package's license is compatible with your project's requirements (license treatment is unclear in metadata).
- Performance and rate-limit behavior when making many concurrent RDAP queries.
- Coverage and reliability of RDAP services for less common TLDs or entity types.
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — httpx, python-dateutil, requests, typing-extensions, urllib3 |
| Maintenance | actively maintained — 69 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 86,549/month — #13,855 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: whoisit-4.0.4-py3-none-any.whl
Tags
More Internet packages
Botocore provides low-level, data-driven access…
permissive · top 100 on PyPI
aiobotocoreProvides an async client for AWS services using…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
filelockProvides a platform-independent file locking…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
googleapis-common-protosProvides common Protocol Buffer message…
permissive · top 100 on PyPI
ipwhoisRetrieves and parses whois and RDAP data for…
permissive · top 15,000 on PyPI
whoisRetrieves WHOIS information for domain names by…
permissive · top 15,000 on PyPI
pyasnpyasn performs fast offline IP address to…
permissive · top 15,000 on PyPI
PyFunceble-devPyFunceble checks whether domains, IPs, and…
permissive · top 15,000 on PyPI
peeringdbA Python client library for querying and…
permissive · top 15,000 on PyPI
ipaddrProvides utilities for parsing, validating, and…
permissive · top 15,000 on PyPI
cidr-trieStores and queries CIDR IP address blocks (IPv4…
permissive · top 15,000 on PyPI
netaddrRepresents and manipulates IPv4, IPv6, MAC…
permissive · top 5,000 on PyPI
cloudcheckIdentifies whether an IP address or hostname…
unclear · top 15,000 on PyPI
pybgpkitPython bindings for BGPKIT tools that parse BGP…
permissive · top 15,000 on PyPI