Задать вопрос
@Yarior_rus

Как получить из URL имя страницы?

Здравствуйте.
Есть вопрос по программе.

Условие:


Дан некоторый URL:

url = 'test.com/dir1/dir2/dir3/page.html'
Получите из него имя страницы:

'page.html'


С моим кодом

import requests
from bs4 import BeautifulSoup


def get_page_title(url):
    try:
        response = requests.get(url)
        response.raise_for_status()

        soup = BeautifulSoup(response.text, 'html.parser')

        title_tag = soup.find('title')

        if title_tag:
            return  title_tag.string.strip()
        else:
            return "Заголовок не найден"

    except requests.exceptions.RequestException as e:
        return f"Ошибка при загрузке URL: {e}"
    except Exception as e:
        return f"Произошла ошибка: {e}"

test_url = "http://test.com/dir1/dir2/dir3/page.html"
page_title = get_page_title(test_url)
print(f"Заголовок страницы для {test_url}: {page_title}")


Выдаёт ошибку


Заголовок страницы для : Ошибка при загрузке URL: Invalid URL '': No scheme supplied. Perhaps you meant https://?


Подскажите где ошибка.
  • Вопрос задан
  • 201 просмотр
Подписаться 1 Простой 1 комментарий
Решения вопроса 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Ответ написан
Комментировать
@dim5x
ЗИ, ИБ. Помогли? Поблагодарите. Отметьте ответом.
Если исходить из условия, то вам достаточно:
url = 'test.com/dir1/dir2/dir3/page.html'
page_name = url.split('/')[-1]
print(page_name)
>>>page.html

И зачем нужен остальной код непонятно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы