Вы можете сделать это, используя HTMLParser и регулярное выражение
Дайте это попробовать.
from html.parser import HTMLParser
import re
html_to_parse = """<span id ='DataListTicker_lblTicker_0'>Wheat</span>
<span id ='DataListTicker_lblTicker_1'>Rice</span>
<span id ='DataListTicker_lblTicker_2'>Barleyt</span>
<span id ='DataListTicker_lblTicker_3'>Milk</span>
<span id ='DataListTicker_lblTicker_n'>XYZ</span>"""
class MyHTMLParser(HTMLParser):
def __init__(self):
super().__init__()
self.handle_next = False
def handle_starttag(self, tag, attrs):
if re.search('^DataListTicker_lblTicker_[0-9]*$', dict(attrs).get("id","")):
self.handle_next = True
def handle_data(self, data):
if self.handle_next :
print(data)
self.handle_next = False
ps = MyHTMLParser()
ps.feed(html_to_parse)
Вероятно, есть гораздо более элегантный способ сделать это, но это должно сработать.