библиотека python tld не может проанализировать поддомен из хранилища.googleapis.com - PullRequest
0 голосов
/ 18 июня 2019

Я пытаюсь проанализировать поля, поддомен и путь к URL-адресу storage.googleapis.com. Но, похоже, существует проблема с разбором поддоменов, в частности с URL-адресами, содержащими домен googleapis.com

парсинг storage.googleapis.com/somePath возвращает поддомен = '', fld = 'storage.googleapis.com', путь = / somePath Если я изменяю один символ в домене, он работает как положено. Например, storage.oogleapis.com/somePath возвращает поддомен = хранилище, fld = oogleapis.com, путь = / somePath. Кажется, что есть ошибка или какая-то особая обработка точной строки googleapis.com в библиотеке tld.

from tld import get_tld


def parse_url(url):
    parsed = get_tld(url, as_object=True, fail_silently=True, fix_protocol=True)
    return parsed.subdomain, parsed.fld, parsed.parsed_url[2], parsed.parsed_url[3]


subdomain, domain, path, query = parse_url('storage.googleapis.com/somePath')
assert (subdomain == 'storage')
assert (domain == 'googleapis.com')
assert (path == '/somePath')
assert (query == '')

При выполнении моего тестового кода я получаю эту ошибку, так как поддомен пуст, а домен - storage.googleapis.com

  File "tld_script.py", line 10, in <module>
    assert (subdomain == 'storage')
AssertionError

Есть идеи, почему это происходит?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...