Skip to main content
https://secure.travis-ci.org/saghul/aiodns.png?branch=master

aiodns provides a simple way for doing asynchronous DNS resolutions with a synchronous looking interface by using pycares.

Example

import asyncio
import aiodns

loop = asyncio.get_event_loop()
resolver = aiodns.DNSResolver(loop=loop)
f = resolver.query('google.com','A')
result = loop.run_until_complete(f)
print(result)

The following query types are supported: A, AAAA, CNAME, MX, NAPTR, NS, PTR, SOA, SRV, TXT.

API

The API is pretty simple, two functions are provided in the DNSResolver class:

  • query(host, type): Do a DNS resolution of the given type for the given hostname. It returns an instance of asyncio.Future.

  • cancel(): Cancel all pending DNS queries. All futures will get DNSError exception set, with ARES_ECANCELLED errno.

Running the test suite

To run the test suite: python test_aiodns.py

Author

Saúl Ibarra Corretgé <saghul@gmail.com>

License

aiodns uses the MIT license, check LICENSE file.

Python versions

Python 3.4 is natively supported. Python 3.3 supported using the asyncio package. Older Python versions(2.6 - 3.2) are supported using trollius.

Contributing

If you’d like to contribute, fork the project, make a patch and send a pull request. Have a look at the surrounding code and please, make yours look alike :-)

Metadata

Release files for aiodns 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aiodns 0.3.2
File Size Uploaded
aiodns-0.3.2.tar.gz 4.2 kB Details

Release files / aiodns-0.3.2.tar.gz

Download URL aiodns-0.3.2.tar.gz
Size 4.2 kB
Tags Source
SHA-256 checksum
How to use checksums
f3c85ec02fbaa3d2139746f4c5bebfda3eb7230d50e7390f92a93442d3be3e45
BLAKE2b-256 checksum
How to use checksums
058e5f9004e113602f1119d4effd3675dfface906bccd372bc50ce435a7cd286
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
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