Существуют ли какие-либо парсеры URL, которые, как правило, согласны быть полностью правильными, включая все угловые случаи?
Я бы хотел бы , чтобы найти один в C ++ (так как это моя конечная цель), но на этом этапе я бы выбрал один практически из любого языка (с хорошей поддержкой в обычных условиях), на который я могу рассчитывать, чтобы быть правильным.
Примечание: I m не запрашивает «рекомендованную», а список библиотек, которые широко признаны «правильными», чтобы я мог сравнить их друг с другом.
Справочная информация:
После беглого поиска подходящей библиотеки C ++ URL я решил попробовать реализовать свою собственную (я не выглядел слишком усердно, это проект, который не дает сойти с ума) ). Чтобы настроить тестовые случаи, я решил использовать существующий анализатор URL стандартной библиотеки из Python, а затем перепроверить его с одним из JavaScript ... и поиск трудных случаев занял совсем немного времени где они не согласны:
Python
urllib.parse.urlparse('hello:80')
ParseResult(path='hello:80', ...)
JavaScript
new URL('hello:80')
Url{protocol:'hello', pathname:'80', ...}
утра Я делаю ошибку, предполагая, что на самом деле есть one correct way
для анализа URL-адресов? Это одна из тех вещей, которые просто в корне неоднозначны без универсального соглашения о том, как все работает?