Я хочу получить число 8 из строки <div class = "abc">+8</div>.
Обратите внимание, что abc не исправлен. Это строка, которая в следующий раз может быть xyz.
Как получить номер?
откуда эта строка?






Вот с красивым мылом:
from bs4 import BeautifulSoup
soup = BeautifulSoup(string)
tag=soup.div
print(tag.string)
I want to get the number
8from the string<div class = "abc">+8</div>.
Вы недостаточно конкретны.
'<div class = "abc">+8</div>'[18]
дает вам '8'. Это работает, если abc также является xyz.
Ожидаете ли вы, что номера всегда начинаются с префикса +? (Я предполагаю, что - тоже вариант). Они всегда внутри тегов <div>? Используются ли теги <div> для чего-нибудь, кроме хранения этих номеров? Может ли <div>, окружающий число, содержать что-то еще, кроме числа? Может ли какой-либо <div> содержать определяемый пользователем текст, который выглядит как эти числа в исходном коде? Прежде чем вы сможете определить свою проблему более конкретно, вы рискуете получить ложные срабатывания.
[ int(x) for x in re.findall(r'<div[^>]+>([+-]\d+)</div>', s) ]