首页 > 解决方案 > 如何使用 xpath 从特定的嵌套类中获取值

问题描述

我试图用 xpath 获取类“sum_num”的值。我有 4 个同名的类

当我运行代码时,我得到值“0”或第三类的值,即跨度文本 - “lblPrice1”

“sum_num”类在页面中存在 4 次,但我只需要该值或第二个。

如何仅从“sum_num”类中获取第二个值?等等 - 这是抓取网页的最佳方式吗?

python(我已经尝试了两个选项):

cost = product_link_selector.xpath('//div[./div/@class="product_code_price"]div/div/div/@class = sum_num/text()').get()

cost = product_link_selector.xpath('//*[contains(@class,"item_sum_group product compare_main")]//*[contains(@class, "sum_num")]').get()

标签: python-3.xxpathweb-crawler

解决方案


您可以使用索引来获取第二项。这是使用索引的示例代码。

(//*[@attribute='attribute_value')[index]

试试下面的。

product_link_selector.xpath('(//*[contains(@class,"item_sum_group product compare_main")]//*[contains(@class, "sum_num")])[2]').get()

推荐阅读