in rst/index_tiles.py [0:0]
def index_tiles(data: str):
# print(s)
# with open ('tiles.xml', 'w') as f:
# f.write(s)
data_root = ET.fromstring(data.encode('utf-8'))
res_items = []
for elem in data_root:
if True:
# This block is never True on dev and AWS env
#if 'class' in elem.attrib and elem.attrib['class'] == 'section':
label_name = ''
for section in elem:
if section.tag == 'h2':
label_name = section.text
if section.tag == 'ul':
for product in section:
title = ''
path = ''
descr = ''
image = ''
text = ''
product_p = product.find('p')
if product_p is not None:
for p in product_p:
if p.tail is not None:
text = p.tail
product_a = product_p.find('a')
if product_a is not None:
path = product_a.attrib['href']
title = product_a.text
product_img = product_p.find('img')
if product_img is not None:
image = product_img.attrib['src']
product_ul = product.find('ul')
if product_ul is not None:
descr = ET.tostring(product_ul, encoding="UTF-8", method="html").decode('utf-8')
res_items.append({
'path': path,
'image': image,
'label': label_name,
'title': title,
'text': text,
'description': descr
})
return res_items