Подскажите, пожалуйста, почему не работает код?

Пишу простенькую программу для того, чтобы при активации она выводила только цифры из всего массива кода страницы. Всё шло нормально до тех под пока не дошёл до строки:

resolte_code = soup.findAll('div', class_='wrap')

После неё перестало работать. Но если убрать код ниже этой строки, и выводить на экран тогда выводится вся строка кода вместе с нужными цифрами.

Код у меня выглядит так

from bs4 import BeautifulSoup
import requests

url = "https://randstuff.ru/ticket/"

page = requests.get(url)

resolt = []
resolte_code = []

soup = BeautifulSoup(page.text, "html.parser")

resolte_code = soup.findAll('div', class_='wrap')

for i in range(len(resolte_code)):
    if resolte_code[i].find('div', class_='wrap') is not None:
         resolt.append(resolte_code[i].text)
for i in range(len(resolt):
    print(resolt[i])

Ответы (1 шт):

Автор решения: becouse

Когда вы распарсили страницу по тегу и атрибуту, вы уже получате, то что вам нужно. А в цикле вы снова ищете тот же самый тег, но уже не в странице, а в результатах поиска.

На момент получения resolte_code уже содержит числа в атрибуте text.

from bs4 import BeautifulSoup
import requests

url = "https://randstuff.ru/ticket/"

page = requests.get(url)

resolt = []
resolte_code = []

soup = BeautifulSoup(page.text, "html.parser")

resolte_code = soup.findAll('div', class_='wrap')

resolt=[int(x.text) for x in resolte_code]


print(resolt)
→ Ссылка