Пытаюсь выдрать текст, используя рег. выражение, под тегом
<nobr>
, который находится внутри определенной таблицы:
soup = BeautifulSoup(resArrow, 'lxml')
tbl = soup.find('tbl', id='maintbl')
for nobr in tbl.find_all('nobr', text=re.compile("MB")):
# ничего не находится
Пример вывода содержимого одно из нужных тегов
<nobr>
:
<nobr>1895.35 MB<br/><a href="down.php?id=555"><b>2,55 tlm</b></a></nobr>
print (nobr.getText())
выдает
1895.35 MB2,55 tlm
В общем, ключевое "
MB" есть, но почему-то в моей регулярке оно не подхватывается. Я уже пробовал и так:
for nobr in tbl.find_all('nobr', text=re.compile(".*MB.*")):
Да и просто указалывал точную строку
for nobr in tbl.find_all('nobr', text="1895.35 MB2,55 tlm"):
for nobr in tbl.find_all('nobr', text="1895.35 MB"):
, но также ничего не находилось.
В чем может быть проблема?
Спасибо!
P.S. Понимаю, что вместо регулярки можно принимать все теги
<nobr>
подряд и уже далее выполнять сравнение :
for nobr in tbl.find_all('nobr'):
if "MB" in nobr.getText(): # так работает
, однако очень хочется разобраться что не так с регуляркой.