我很好奇是否有办法只获取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')
关于python - 获取<b>标记中的下一个文本内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31791292/