繁体   English   中英

获取标签中的下一个文本内容

[英]Get next content of text in <b> tag

我很好奇是否有办法只获取font标签中的最后一个文本。

<font face="Arial, Helvetica" size="5">
            No previous.<br><br>
            <b>Number :</b> 1</font>

像这样:

soup.find('b',text='Number :').find_next_content

输出:u'1'

要获取紧接<b>元素的文本:

In [18]: soup.find('b', text='Number :').next_sibling
Out[18]: ' 1'

要在<font>元素内获取最终文本:

In [24]: soup.find('font').contents[-1]
Out[24]: ' 1'

示例程序:

from bs4 import BeautifulSoup

soup = '''<font face="Arial, Helvetica" size="5">
            No previous.<br><br>
            <b>Number :</b> 1</font>'''
soup = BeautifulSoup(soup)

result0 = soup.find('b', text='Number :').next_sibling
result1 = soup.find('font').contents[-1]
assert(result0 == ' 1')
assert(result1 == ' 1')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM