> This is a modified fork of the actual library to suit TIDoS's needs. See README.md at root of lib/ directory.
Extract the top level domain (TLD) from the URL given. List of TLD names is taken from Mozilla.
Optionally raises exceptions on non-existing TLDs or silently fails (if
fail_silently argument is set to True).
- Python 2.6, 2.7, 3.4, 3.5, 3.6 and PyPy
Documentation is available on Read the Docs.
Latest stable version on PyPI:
pip install tldOr latest stable version from GitHub:
pip install https://github.com/barseghyanartur/tld/archive/stable.tar.gzOr latest stable version from BitBucket:
pip install https://bitbucket.org/barseghyanartur/tld/get/stable.tar.gzGet the TLD name as string from the URL given:
from tld import get_tld, get_fld
get_tld("http://www.google.co.uk")
# 'co.uk'
get_fld("http://www.google.co.uk")
# 'google.co.uk'
get_tld("http://www.google.idontexist", fail_silently=True)
# None
get_fld("http://www.google.idontexist", fail_silently=True)
# NoneIf you wish, you could get the TLD as an object:
from tld import get_tld
res = get_tld("http://some.subdomain.google.co.uk", as_object=True)
res
# 'co.uk'
res.subdomain
# 'some.subdomain'
res.domain
# 'google'
res.tld
# 'co.uk'
res.fld
# 'google.co.uk'Get TLD name, ignoring the missing protocol:
from tld import get_tld, get_fld
get_tld("www.google.co.uk", fix_protocol=True)
# 'co.uk'
get_fld("www.google.co.uk", fix_protocol=True)
# 'google.co.uk'To update/sync the tld names with the most recent version run the following from your terminal:
update-tld-namesOr simply do:
from tld.utils import update_tld_names
update_tld_names()If somehow domain names listed here are not recognised, make sure you have the most recent version of TLD names in your virtual environment:
update-tld-namesSimply type:
./runtests.pyOr use tox:
toxOr use tox to check specific env:
tox -e py36Keep the following hierarchy.
=====
title
=====
header
======
sub-header
----------
sub-sub-header
~~~~~~~~~~~~~~
sub-sub-sub-header
^^^^^^^^^^^^^^^^^^
sub-sub-sub-sub-header
++++++++++++++++++++++
sub-sub-sub-sub-sub-header
**************************
MPL 1.1/GPL 2.0/LGPL 2.1
For any issues contact me at the e-mail given in the Author section.
Artur Barseghyan <artur.barseghyan@gmail.com>