Подтвердить что ты не робот

Что я должен использовать: urlparse или urlsplit?

Какую пару пар синтаксического анализа URL следует использовать и почему?

4b9b3361

Ответ 1

Непосредственно из документов, которые вы связали самостоятельно:

urllib.parse.urlsplit(urlstring, scheme='', allow_fragments=True)
Это похоже на urlparse(), но не разделяет параметры из URL-адреса. Обычно это следует использовать вместо urlparse(), если требуется более новый синтаксис URL-адресов, позволяющий применять параметры к каждому сегменту участка пути URL (см. RFC 2396).

Ответ 2

Как сообщает ,
urlparse.urlparse возвращает 6-кортеж (с дополнительным кортежем)
urlparse.urlsplit возвращает 5-кортеж

Атрибут | Индекс | Значение                               | Значение, если не представлено
   params       3 | Параметры для последнего элемента пути | пустая строка


FYI: Согласно RFC2396, параметр в спецификации URL

Обширное тестирование существующих клиентских приложений продемонстрировало, что    большинство развернутых систем не используют ";" характер для    указывают информацию о завершающих параметрах и что наличие    точка с запятой в сегменте пути не влияет на относительный синтаксический анализ    этот сегмент. Поэтому параметры были удалены как отдельные    и теперь могут появляться в любом сегменте пути. Их влияние    был удален из алгоритма для разрешения относительного URI    ссылка.