Почему python представляет URL-адрес (вместо базового в сочетании с URL-адресом), когда URL-адрес начинается с mailto?
Вот что произошло:
from urllib.parse import urljoin
>>> urljoin('http://www.w3.org/Consortium/mission.html', 'mailto:site-comments@w3.org')
'mailto:site-comments@w3.org'
но я ожидал, что результат будет:
'http://www.w3.org/Consortium/mailto:site-comments@w3.org'
С:
>>> urljoin('http://www.w3.org/Consortium/mission.html', 'thing')
'http://http://www.w3.org/Consortium/thing'
(Также см .: Python: путаница с urljoin )
Сначала я думал, что mailto присутствует в результате, потому что mailto - это абсолютный URL-адрес. Но mailto не начинается с // или схемы: //, поэтому он не является абсолютным URL-адресом.
Примечание. Если URL-адрес является абсолютным URL (т. Е. Начинается с // или
схема: //), имя хоста и / или схема URL будут присутствовать в
результат.
См .: https://docs.python.org/3.0/library/urllib.parse.html
Итак, если «mailto:» не является абсолютным URL, почему «mailto:» является результирующим URL?
Это поведение, которое я хочу, но я просто не понимаю, почему это происходит.