无法从 HTML 代码中删除价格

couldn't scrap the price out of a HTML code

我有下面的 HTML 代码:

<span class="price">
    <span class="woocommerce-Price-amount amount">
        <bdi>
             <span class="woocommerce-Price-currencySymbol">R</span>
             1 579
             <sup>00</sup>
        </bdi>
    </span>
</span>

我需要使用 python 从那里提取价格,格式为“1579.00”作为浮点数。我该怎么做?

要获取浮动价格金额,您可以使用下一个示例:

import re
from bs4 import BeautifulSoup

html_doc = """<span class="price">
    <span class="woocommerce-Price-amount amount">
        <bdi>
             <span class="woocommerce-Price-currencySymbol">R</span>
             1 579
             <sup>00</sup>
        </bdi>
    </span>
</span>"""

soup = BeautifulSoup(html_doc, "html.parser")

price = soup.select_one(".amount").text
price = float("".join(re.findall(r"\d+", price))) / 100
print(price)

打印:

1579.0

或者:

soup.select_one(".woocommerce-Price-currencySymbol").extract()
price = float(
    soup.select_one(".amount")
    .get_text(strip=True, separator=".")
    .replace(" ", "")
)
print(price)

打印:

1579.0