@irsby

Как спарсить номер статьи из гиперссылки?

Имею такую гиперссылку с номером статьи в конце url:
<a href="https://example.com/?p=5144" rel="bookmark"> example </a>

Создаю телеграм-бота, который сравнивает номер последней статьи с вышедшей, и если номер больше, то бот посылает уведомление о новой статье.

Как извлечь из url номер статьи? Использую Python и beautifulsoup.
Заранее спасибо.
  • Вопрос задан
  • 100 просмотров
Решения вопроса 2
SoreMix
@SoreMix Куратор тега Python
yellow
Любым удобным способом

Сплитом
url = 'https://example.com/?p=5144'
page = url.split('?p=')[-1]


Заменой
url = 'https://example.com/?p=5144'
page = url.replace('https://example.com/?p=', '')


Регексом
import re
url = 'https://example.com/?p=5144'
page = re.search(r'\?p=(\d+)', url).group(1)
Ответ написан
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
Можно и без BS обойтись:
import re
number = int(re.search('\?p=(\d+)"', '<a href="https://example.com/?p=5144" rel="bookmark"> example </a>').group(1))
print(number)

# 5144
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@zyusifov11
url = soup.find("a", class_="класс тега").get("href")
page = url.replace('https://example.com/?p=', '')
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы