Получить текст вне одного тега и внутри другого - PullRequest
5 голосов
/ 25 августа 2011

Я анализирую веб-страницу с BeautifulSoup, и она имеет некоторые элементы, такие как:

<td><font size="2" color="#00009c"><b>Consultant Registration Number  :</b></font>  16043646</td>

Структура всегда выглядит как <td> с первой частью, окруженной <font><b>,и текст после тега </font> может быть пустым.Как я могу получить этот текст после тега шрифта?

В этом примере я хотел бы получить "16043646".Если бы html был вместо

<td><font size="2" color="#00009c"><b>Consultant Registration Number  :</b></font></td>

, я бы хотел получить ""

1 Ответ

5 голосов
/ 25 августа 2011
>>> from BeautifulSoup import BeautifulSoup
>>> text1 = '<td><font size="2" color="#00009c"><b>Consultant Registration Number  :</b></font>  16043646</td>'
>>> text2 = '<td><font size="2" color="#00009c"><b>Consultant Registration Number  :</b></font></td>'
>>> BeautifulSoup(text1).td.font.nextSibling
u'  16043646'
>>> BeautifulSoup(text2).td.font.nextSibling
>>>
...