Как извлечение атрибута тега выполнить в цикле?
Как, используя beautifulsoup, извлечь значение атрибута тега и запустить всё в цикле?
Запуская поодиночке - всё приходит, в цикле - нет
from bs4 import BeautifulSoup
import codecs
f = codecs.open("ZHVACHKA.html", 'r', 'utf-8')
html = f.read()
soup = BeautifulSoup(html, "lxml")
products = soup.findAll("div", class_="tovar")
data = [products]
#product_name = soup.find(class_="tovar-schet").find("p") #вытащил значение из тега по атрибуту
#product_price = soup.find("div", class_="tovar-price")[0].text #вытащил цену
#на всякий случай решил поставить обработку в случае изменения разметки сайта
#запускаю цикл на сбор всех данных по классу и атрибуту
for product in products:
#на всякий случай решил поставить обработку в случае изменения разметки сайта
try:
product_name = product.find("p") # вытащил значение из тега по атрибуту
product_price = product.text # вытащил цену
print(data)
except Exception as ex:
print(ex)
Запускаю поодиночке - всё работает, но как только пытаюсь запустить всё в цикле - приходит какая-то каша
Источник: Stack Overflow на русском