tldextract

Accurately separates a URL’s subdomain, domain, and public suffix, using the Public Suffix List (PSL).

BSD-3-CLAUSE License

Downloads
12.6M
Stars
1.8K
Committers
44

Bot releases are visible (Hide)

tldextract - 5.1.2 Latest Release

Published by john-kurkowski 7 months ago

What's Changed

  • Bugfixes
    • Remove socket.inet_pton, to fix platform-dependent IP parsing (#318)
    • Use non-capturing groups for IPv4 address detection, for a slight speed boost (#323)
  • Misc.
    • Add CI for PyPy3.9 and PyPy3.10 (#316)
    • Add script to automate package release process (#325)
    • Update LICENSE copyright years

New Contributors

Contributors

  • @elliotwutingfeng

Full Changelog: https://github.com/john-kurkowski/tldextract/compare/5.1.1...5.1.2

tldextract - 5.1.1

Published by john-kurkowski 11 months ago

What's Changed

  • Bugfixes
    • Fix path join on Windows (#314)
    • Support Python 3.12

Contributors

  • @elliotwutingfeng

Full Changelog: https://github.com/john-kurkowski/tldextract/compare/5.1.0...5.1.1

tldextract - 5.1.0

Published by john-kurkowski 12 months ago

What's Changed

  • Features
    • Allow passing in requests.Session (#311)
    • Add "-j, --json" option to support output in json format (#313)
  • Docs
    • Improve clarity of absolute path (#312)
  • Misc.
    • Extract all testing deps from tox.ini to pyproject.toml extras (#310)
    • Work around responses type union error, in tests

New Contributors

Contributors

  • @elliotwutingfeng

Full Changelog: https://github.com/john-kurkowski/tldextract/compare/5.0.1...5.1.0

tldextract - 5.0.1

Published by john-kurkowski about 1 year ago

What's Changed

  • Bugfixes
    • Indicate MD5 not used in a security context (FIPS compliance) (#309)
  • Misc.
    • Increase typecheck aggression

New Contributors

Full Changelog: https://github.com/john-kurkowski/tldextract/compare/5.0.0...5.0.1

tldextract - 5.0.0

Published by john-kurkowski about 1 year ago

What's Changed

  • Breaking Changes
    • Migrate ExtractResult from namedtuple to dataclass (#306)
      • This means no more iterating/indexing/slicing/unpacking the result
        object returned by this library. You must directly reference the
        fields you're interested in. For example, instead of
        tldextract.extract("example.com")[1:3]
        
        you must use
        ext = tldextract.extract("example.com")
        (ext.domain, ext.suffix)
        
  • Bugfixes
    • Drop support for EOL Python 3.7
  • Misc.
    • Switch from pycodestyle and Pylint to Ruff (#304)
    • Consolidate config files
    • Type tests
    • Require docstrings in tests
    • Remove obsolete tests

Full Changelog: https://github.com/john-kurkowski/tldextract/compare/4.0.0...5.0.0

tldextract - 4.0.0

Published by john-kurkowski about 1 year ago

What's Changed

  • Breaking bugfixes
    • Always include suffix if private suffix enabled and private suffix exists (#300)
      • Add a 4th field is_private: bool, to the ExtractResult
        namedtuple, indicating whether the extraction came from the PSL's
        private domains or not.
      • This could cause issues when iterating over the tuple and assuming
        only 3 fields.
      • Previously, the docs promoted iteration to rejoin parts of the tuple.
        This is better achieved by individual access of fields of interest
        (e.g. ExtractResult.subdomain) or convenience properties (e.g.
        ExtractResult.{fqdn,registered_domain}).

Full Changelog: https://github.com/john-kurkowski/tldextract/compare/3.5.0...4.0.0

This is the same content as version 3.6.0, originally released 2023-09-19,
which was yanked.

tldextract - 3.6.0

Published by john-kurkowski about 1 year ago

What's Changed

  • Breaking bugfixes
    • Always include suffix if private suffix enabled and private suffix exists (#300)
      • Add a 4th field is_private: bool, to the ExtractResult
        namedtuple, indicating whether the extraction came from the PSL's
        private domains or not.
      • This could cause issues when iterating over the tuple and assuming
        only 3 fields.
      • Previously, the docs promoted iteration to rejoin parts of the tuple.
        This is better achieved by individual access of fields of interest
        (e.g. ExtractResult.subdomain) or convenience properties (e.g.
        ExtractResult.{fqdn,registered_domain}).

Full Changelog: https://github.com/john-kurkowski/tldextract/compare/3.5.0...3.6.0

tldextract - 3.5.0

Published by john-kurkowski about 1 year ago

What's Changed

  • Features
    • Support IPv6 addresses (#298)
  • Bugfixes
    • Accept only 4 decimal octet IPv4 addresses (#292)
    • Support IPv4 addresses with unicode dots (#292)
    • Reject IPv4 addresses with trailing whitespaces + non-whitespaces (#293)
  • Misc.
    • Migrate setup.py to pyproject.toml (#299)

Full Changelog: https://github.com/john-kurkowski/tldextract/compare/3.4.4...3.5.0

Package Rankings
Top 29.35% on Anaconda.org
Top 29.27% on Spack.io
Top 7.68% on Alpine-v3.14
Top 7.14% on Alpine-v3.13
Top 3.98% on Alpine-v3.16
Top 3.2% on Alpine-v3.18
Top 5.12% on Alpine-v3.15
Top 5.36% on Alpine-edge
Top 4.85% on Alpine-v3.17
Top 10.12% on Conda-forge.org
Top 0.96% on Pypi.org
Badges
Extracted from project README
PyPI version Build Status
Related Projects