我怎么得到<p>值使用python3和beautifulsoup

时间:2017-06-22 07:31:01

标签: python python-3.x beautifulsoup

我使用python3和beactifulsop过滤html,在这个html中,21803987 我想得到soup.text.strip()号,我用 Installs:21 803 987它返回UNUserNotificationCenter.current().getNotificationSettings { (settings) in // Your code here }
这不是我想要的,有些人有点想法吗?Thx !!!!!

3 个答案:

答案 0 :(得分:1)

>>> h = '<p><span><a href="/packages/symfony/symfony/stats" rel="nofollow">Installs</a>:</span>21 803 987</p>'
>>> s = BeautifulSoup(h, 'lxml')
>>> a = s.p.find(text=True, recursive=False)
>>> a
'21\u2009803\u2009987'

答案 1 :(得分:0)

元素p包含所有文本:“Installs:21 803 987”,这是正确的。

仅获得21803987

soup.text.split(":")[-1].strip()

答案 2 :(得分:0)

您可以使用strings属性访问cardType标记中的所有单个字符串。然后抓住你需要的那个(最后一个):

p

或者,更有效率:

list(soup.p.strings)[-1]