Hoe te werken met URL's in Python
De URL-laag van Aspose.HTML FOSS voor Python implementeert parsing in de stijl van WHATWG, zodat URL’s die in documenten worden gevonden worden opgelost en genormaliseerd op de manier waarop browsers ze behandelen. Deze gids behandelt parsing, validatie, query-strings en het faalmodel, met pip voor installatie.
Stap-voor-stap gids
Stap 1: Installeer het pakket
git clone https://github.com/aspose-html-foss/Aspose.HTML-FOSS-for-Python.git
cd Aspose.HTML-FOSS-for-Python
pip install -e .Stap 2: Importeer vereiste klassen
from aspose_html.url import URL, URLSearchParamsStap 3: Parse en valideer
URL.parse() parseert absolute of relatieve URL’s (met een basis); URL.can_parse() beantwoordt geldigheid goedkoop zonder een object te construeren; parse-fouten werpen de getypeerde URLParseError.
Stap 4: Querystrings bewerken
URLSearchParams rondreist query-parameters — append(), get(), get_all(), has() en delete() — en behoudt de multi-waarde-semantiek voor herhaalde sleutels.
Veelvoorkomende problemen en oplossingen
Een relatieve URL kan niet worden geparseerd. Relatieve parsing vereist een basis-URL — lever er een aan om URL.parse().
Alleen de eerste waarde van een herhaalde sleutel wordt teruggegeven. get() geeft de eerste overeenkomst terug volgens ontwerp; gebruik get_all() voor elke waarde.
Componenten lijken onverwacht genormaliseerd of percent-gecodeerd. WHATWG-normalisatie in actie — de output komt overeen met het gedrag van browsers.
Veelgestelde Vragen
Hoe valideer ik een URL zonder deze te parseren?
URL.can_parse() retourneert een boolean zonder objectconstructie.
Zijn query-sleutels hoofdlettergevoelig?
Ja — sleutels worden exact zoals ze zijn vergeleken, in overeenstemming met de URL-standaard.
Welk fouttype wordt bij parse-fouten opgegooid?
De getypeerde URLParseError — vang deze op in plaats van vooraf te valideren met reguliere expressies.