#python #html #numbers
#python #HTML #числа
Вопрос:
Проблема в том, что я не могу вывести числа из HTML-кода.
Комментарии:
1. Вы ищете <span> комментарии с именем кл асса. Предоставленная вами HTML-строка не содержит элементов как так овых. Я бы посоветовал вам подробнее ознакомиться с HTML и BeautifulSoup
Ответ №1:
import re
from bs4 import BeautifulSoup
url = str(input())
soup = BeautifulSoup(url,"html.parser")
data = soup.find_all('td')
numbers = [d.text for d in data if d.text.isdigit()] # if the text of the td element is a number, include it in the list assigned to the variable 'numbers'
print(numbers)
>>> ['23', '40']
По сути, разбейте это на более мелкие шаги:
-
Выделите все HTML-элементы, которые могут содержать нужные вам данные (в данном случае
<td>
элементы) -
Для каждого из этих элементов проверьте, содержит ли он цифру, используя метод str.isnumber(): str.isdigit() doc
Комментарии:
1. Попробуйте сейчас — пришлось перемещаться по синтаксису понимания списка.
2. это, безусловно, возможно, но подход будет зависеть от ваших потребностей. можете ли вы просто не использовать beautifulsoup в частности или все библиотеки синтаксического анализа HTML?
3. isdigit не учитывает значения с плавающей точкой.
4. @n1c9 например, задача похожа на эту, но нужно выполнить эту задачу без beautifulsoup, только с поиском чисел или заменой, не могли бы вы дать мне какую-нибудь подсказку, пожалуйста?