get text after specific tag with beautiful soup

三世轮回 提交于 2019-12-30 03:22:08

问题


I have a text like

page.content = <body><b>Title:</b> Test title</body>

I can get the Title tag with

soup = BeautifulSoup(page.content)
record_el = soup('body')[0]
b_el = record_el.find('b',text='Title:')

but how can I get the text after the b tag? I would like to get the text after the element containing "Title:" by referring to that element, and not the body element.


回答1:


Referring to the docs you might want to use the next_sibling of your b_el:

b_el.next_sibling    # contains " Test title"

"Sibling" in this context is the next node, not the next element/tag. Your element's next node is a text node, so you get the text you want.



来源:https://stackoverflow.com/questions/38754940/get-text-after-specific-tag-with-beautiful-soup

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!