代码:
from bs4 import BeautifulSoup
soup = BeautifulSoup('<div><p>p1</p>TEST<p>p2</p></div>')
print soup.div()
结果:
[<p>p1</p>, <p>p2</p>]
为什么字符串TEST
不在结果集中?我怎么能得到它?
答案 0 :(得分:1)
soup.div()
是soup.div.find_all()
的快捷方式,div
标记内的find you all 标记 - 正如您所看到的,它可以完成工作。 TEST
是p
代码之间的文字,换句话说,是第一个tail
代码的p
。
您可以通过获取第一个TEST
代码并使用.next_sibling
来获取p
字符串:
>>> soup.div.p.next_sibling
u'TEST'
或者,通过获取div
&#39; s .contents
的第二个元素:
>>> soup.div.contents[1]
u'TEST'
答案 1 :(得分:0)
来自bs4
import BeautifulSoup
soup = BeautifulSoup('<div><p>p1</p>TEST<p>p2</p></div>')
print soup.div.text
u'p1TESTp2'