在Beautiful Soup中提取标记值

时间:2018-06-06 07:32:51

标签: python html beautifulsoup

我在python中使用漂亮的汤解析一个html文档。

我遇到了像这样的标签

div class="_3auQ3N">\u20b9<!-- -->1,990</div>

\ u20bp代表货币符号,价格是1,990。

我想知道如何将这些值提取到两个不同的字符串(或值)中?

2 个答案:

答案 0 :(得分:4)

>>> soup = BeautifulSoup('<div class="_3auQ3N">\u20b9<!-- -->1,990</div>', 'lxml')
>>> list(soup.div.strings)
['₹', '1,990']

答案 1 :(得分:0)

一旦你提取了你的字符串,你可能会使用正则表达式:

import re


string = "\u20b9<!-- -->1,990"
a = re.findall("(^.*)<!-- -->(.*)", string)
print(a[0][0],a[0][1]) # ₹ 1,990