Как разбить веб-адрес

Поэтому я использую python для разбора веб-страниц, и я хочу разделить полный веб-адрес на две части. Скажем, у меня есть адрес http://www.stackoverflow.com/questions/ask . Мне нужен протокол и домен (например, http://www.stackoverflow.com ) и путь (например, / questions / ask). Я решил, что это может быть решено каким-то регулярным выражением, но я не очень удобен в этом. Какие-либо предложения?

3 Solutions collect form web for “Как разбить веб-адрес”

Дэн прав: urlparse – ваш друг:

>>> from urlparse import urlparse >>> >>> parts = urlparse("http://www.stackoverflow.com/questions/ask") >>> parts.scheme + "://" + parts.netloc 'http://www.stackoverflow.com' >>> parts.path '/questions/ask' 

Используйте модуль urlparse Python:

https://docs.python.org/library/urlparse.html

Для хорошо определенной и хорошо пройденной проблемы, как это, не беспокойтесь, написав свой собственный код, не говоря уже о собственных регулярных выражениях. Они вызывают слишком много проблем ;-).

 import re url = "http://stackoverflow.com/questions/ask" protocol, domain = re.match(r"(http://[^/]*)(.*)", url).groups() 
  • Как получить имя домена (имя + TLD) из URL-адреса в python
  • Кодирование URL в python
  • urllib2 возвращает 404 для веб-сайта, который отлично отображает браузеры
  • OSX: определение нового обработчика URL, который указывает прямо на скрипт Python
  • Django: получение предыдущего URL-адреса
  • Каков синтаксис добавления параметра GET в URL? питон; движок Google
  • Получение двух строк переменной из URL в Django
  • Генерировать хэш-значение фиксированной длины в python для параметра url
  • URL-адрес Facebook, возвращающий ответ URL-адреса мобильной версии в scrapy
  • как безопасно кодировать строку с помощью python? и urllib.quote ошибочен
  • Каковы параметры URL? (элемент в позиции № 3 по результату urlparse)
  • Python - лучший язык программирования в мире.