首页 > 解决方案 > Python BeautifulSoup - 试图在多个 div 中获取没有任何类的跨度值

问题描述

我想使用 python 模块 BeautifulSoup 在网站上刮取价格值,我尝试了多种方法,但没有找到解决方案。此外,价格不断变化。我想在“跨度”之间的第 7 行获得 1520.15。html文件:

<div class="tv-category-header__main-price js-scroll-container">
<div class="tv-scroll-wrap tv-scroll-wrap--horizontal js-scroll-scrollable-element">
    <div class="tv-category-header__main-price-content">

        <div class="tv-symbol-price-quote js-last-price-block">
            <div class="tv-symbol-price-quote__row js-last-price-block-value-row">
                <div class="tv-symbol-price-quote__value js-symbol-last"><span>1520.15</span></div>
                <div class="tv-symbol-price-quote__supply">
                    <div class="tv-symbol-price-quote__data-mode tv-data-mode tv-data-mode--size_large js-data-mode tv-data-mode--no-realtime apply-common-tooltip tv-data-mode--realtime tv-data-mode--realtime--no-realtime" title="Real-time">R</div>
                    <div class="tv-symbol-price-quote__currency js-symbol-currency">USD</div>
                </div>
                <div class="js-symbol-change-direction tv-symbol-price-quote__change tv-symbol-price-quote__change--growing">
                    <span class="js-symbol-change tv-symbol-price-quote__change-value">+5.18</span>
                    <span class="js-symbol-change-pt tv-symbol-price-quote__change-value">(+0.34%)</span>
                </div>
            </div>
            <div class="tv-symbol-price-quote__sub-line">
                <span class="js-last-price-block-title tv-symbol-price-quote__market-stat tv-symbol-price-quote__market-stat--open">Market Open</span>
                <span class="js-symbol-lp-time">(Dec 31 14:01 UTC-5)</span>
            </div>
        </div>
    </div>
</div>

这是我的代码:

import requests
import bs4
from bs4 import BeautifulSoup


r = requests.get('https://samplewebsite.com/pagewithprice')
page_soup = BeautifulSoup(r.text, 'lxml')
price = page_soup.find("div", class_="tv-symbol-price-quote__value js-symbol-last").find("span")
print(price)

我正在使用 python 3.6 和 Beautifulsoup 的最新版本

标签: htmlpython-3.xweb-scrapingbeautifulsoup

解决方案


推荐阅读