NAME
Data::Tranco - An interface to the Tranco domain list.
VERSION
version 0.001
SYNOPSIS
use Data::Tranco;
# get a random domain from the list
$domain = Data::Tranco->random_domain;
# get a random domain from the list with a specific suffix
$domain = Data::Tranco->random_domain("org");
# get the highest ranking domain
$domain = Data::Tranco->top_domain;
# get the highest ranking domain from the list with a specific suffix
$domain = Data::Tranco->top_domain("co.uk");
DESCRIPTION
Data::Tranco provides an interface to the Tranco list of popular domain names.
METHODS
RANDOM DOMAIN
$domain = Data::Tranco->random_domain($suffix);
Returns a randomly-selected domain from the list. If $suffix
is specified, then only a domain that ends with that suffix will be returned.
TOP DOMAIN
$domain = Data::Tranco->top_domain($suffix);
Returns the highest-ranking domain from the list. If $suffix
is specified, then the highest-ranking domain that ends with that suffix will be returned.
IMPLEMENTATION
The Tranco list is published as a zip-compressed CSV file. By default, Data::Tranco will automatically download that file, extract the CSV file, and write it to an SQLite database if (a) the file doesn't exist yet or (b) it's more than a day old.
If you want to control this behaviour, you can use the following:
$Data::Tranco::TTL
This is how old the local file can be (in seconds) before it is updated. It is 86400 seconds by default.
$Data::Tranco::STATIC
If you set this value to 1
then Data::Tranco will not update the database.
Data::Tranco->update_db
This will force an update to the database.
AUTHOR
Gavin Brown <gavin.brown@icann.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2024 by Internet Corporation for Assigned Names and Numbers (ICANN).
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.