使用 xpath 提取 Web 元素后如何验证 Web 元素的标签

我在 python 中使用 selenium 和 chrome 驱动程序。

这是我的场景:

我从网页中提取具有id==customer_infoclass==prize_info使用以下代码的所有元素:

customer_or_prize_list=driver.find_elements_by_xpath('//*[@id="customer_info" or @class="prize_info"]')

现在我想遍历列表“customer_or_prize_list”的每个元素并按如下方式处理

  1. 如果网页元素包含id==customer_info则执行 multi_line_text_formatting (假设其为操作 1)

  2. 如果网页元素包含class==prize_info则执行 single_line_text_formatting (假设其为操作 2)

您可以假设 Web 元素不会同时包含 id 和 class。

如何使用上面的 1. 和 2. 处理列表元素?


梦里花落0921
浏览 95回答 1
1回答

白猪掌柜的

当您浏览列表中的每个元素时,使用以下方法获取元素的属性get_attribute():for el in customer_or_prize_list:  is_customer = "customer_info" in el.get_attribute("id")  is_prize    = "prize_info"    in el.get_attribute("class")其他方式,为什么不将列表分成两个小列表,如下所示:customer_list=driver.find_elements_by_xpath('//*[@id="customer_info"]')for e in customer_list:  '''do multi_line_text_formatting'''prize_list=driver.find_elements_by_xpath('//*[@class="prize_info"]')for e in prize_list:  '''do single_line_text_formatting'''
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python