首页 > 解决方案 > 如何获取 WebElement 的值

问题描述

我正在尝试遍历我们 ERP 系统页面上的表格元素。

基于我之前提出的一个问题,我认为这将是一个灌篮 - 但我无法弄清楚。

这是我尝试过的最新代码:

approved_suppliers = driver.find_elements_by_xpath("//tbody[@id='ApprovedSupplierBody']")
for supplier in approved_suppliers:
    print('Supplier',supplier.id)

如果我替换print('Supplier',supplier.id)print('Supplier',supplier.value)我收到以下错误:

AttributeError: 'WebElement' object has no attribute 'value'

在截图示例中,我希望打印代码300 Below,并且当有多个供应商时,字段的名称会增加 1。例如,、、pik_Supplier_1pik_Supplier_2

在此处输入图像描述

感谢你们对我的帮助!

标签: pythonpython-3.xseleniumselenium-webdriver

解决方案


带有的元素id ApprovedSupplierBody是单个元素,要获得带有的元素,id pikSupplier您需要将其包含在 xpath 中

approved_suppliers = driver.find_elements_by_xpath("//tbody[@id='ApprovedSupplierBody']//input[starts-with(@id, 'pikSupplier')]")

要获取您需要用来get_attribute获取 value 属性的值

supplier.get_attribute('value')

您需要对 , 执行相同的操作idsupplier.id将返回 internalWebElementid属性,例如92505ac9-2c32-447e-b94a-8c7398b53e0e和 not ApprovedSupplier


推荐阅读