Jak pracować z URL-ami w Python
Warstwa URL Aspose.HTML FOSS dla Python implementuje parsowanie w stylu WHATWG, więc adresy URL znalezione w dokumentach są rozwiązywane i normalizowane tak, jak przeglądarki je obsługują. Ten przewodnik obejmuje parsowanie, walidację, ciągi zapytań i model błędów, przy użyciu pip do instalacji.
Poradnik krok po kroku
Krok 1: Zainstaluj pakiet
git clone https://github.com/aspose-html-foss/Aspose.HTML-FOSS-for-Python.git
cd Aspose.HTML-FOSS-for-Python
pip install -e .Krok 2: Zaimportuj wymagane klasy
from aspose_html.url import URL, URLSearchParamsKrok 3: Parsuj i weryfikuj
URL.parse() parsuje bezwzględne lub względne adresy URL (z bazą); URL.can_parse() odpowiada na pytanie o ich poprawność tanio, bez tworzenia obiektu; błędy parsowania podnoszą typowany URLParseError.
Krok 4: Edytuj ciągi zapytań
URLSearchParams zachowuje parametry zapytania w pełnym cyklu — append(), get(), get_all(), has() i delete() — zachowując semantykę wielu wartości dla powtarzających się kluczy.
Typowe problemy i rozwiązania
Względny adres URL nie może zostać sparsowany. Analiza względna wymaga podstawowego adresu URL — podaj go do URL.parse().
Zwracana jest tylko pierwsza wartość powtarzanego klucza. get() zwraca pierwsze dopasowanie zgodnie z projektem; użyj get_all() dla każdej wartości.
Elementy wyglądają na znormalizowane lub procentowo zakodowane w nieoczekiwany sposób. Normalizacja WHATWG w działaniu — wynik odpowiada zachowaniu przeglądarki.
Najczęściej zadawane pytania
Jak zwalidować URL bez jego parsowania?
URL.can_parse() zwraca wartość logiczną bez tworzenia obiektu.
Czy klucze zapytań są wrażliwe na wielkość liter?
Tak — klucze są dopasowywane dokładnie tak, jak są, zgodnie ze standardem URL.
Jakiego typu błąd zgłaszają niepowodzenia parsowania?
Typowany URLParseError — przechwyć go zamiast wstępnie walidować wyrażeniami regularnymi.