Python 3.x 需要获取HTML正文中存在的特定类

Python 3.x 需要获取HTML正文中存在的特定类,python-3.x,web-scraping,scrapy,Python 3.x,Web Scraping,Scrapy,我试图检查下面的代码中是否存在class=特殊价格。 以下是html代码: <div class="product-shop"> <div class="f-fix"> <h2 class="product-name newname"> <a href="#" title=""> Xiaomi Mi Band 2 Strap (Black with White Border) </a></h2> <!

我试图检查下面的代码中是否存在class=特殊价格。 以下是html代码:

<div class="product-shop">
 <div class="f-fix">
    <h2 class="product-name newname"> <a href="#" title=""> Xiaomi Mi Band 2 Strap (Black with White Border) </a></h2>
    <!--product price-->
    <div class="text-center ">
        <div class="price-box">
            <p class="old-price"> <span class="price-label">Regular Price:</span > 
              <span class = "price" id = "old-price-8846" > ৳200 </span>
            </p > 
            <p class = "special-price" > 
             <span class = "price-label"> Special Price </span> 
             <span class="price" itemprop="price" content="149" id="product-price-8846"> ৳149 </span>
          </p>
      </div> 
  </div > 
</div>

我将Scrapy与python一起使用。在检查类是否找到后,我需要收集class=price的文本

您是否尝试过以下方法:

if response.css('.special-price'):
    price = response.css('.price::text').get()  # or do whatever you need
简言之:

price = response.css('.special-price .price::text').get()

如果没有具有特殊价格等级的元素,它将不会给您任何好处。

您已经尝试过什么?你得到了什么错误/输出?我试过了,它成功了。作为一名新手,我正在努力将这些数据存储在一个变量上并打印输出。这是我的代码:def parself,response:self.log“我刚刚访问过:”+response.url target_div=response.css“div.product-shop>div.f-fix>div.text-center”,用于目标_div:if item.response.css中的项目。特殊价格:price=response.css。price::text。获取退货价格:其他价格:price=response.css'.常规价格.价格::text'.获取退货价格