返回通过其他方式找到的元素的xpath

时间:2019-06-25 16:42:07

标签: python selenium

我在python中使用硒从网站数据库中提取信息。该信息显示在模式窗口中的表格中。不幸的是,每次弹出表时,它都会重新填充数据,这意味着表中的所有内容都具有动态xpath,因此我不能用它来查找项目。表格如下所示: modal table

我可以找到“客户名称”(第3列),因为该名称是超链接的,因此我可以使用href,但是我仍然需要从“公用事业公司”列(第7列)中获取值。 。

以下是每个项目的xpath:

客户名称: // * [@ id =“ 1561479354688-0-uiGrid-00CA-cell”] / div / a

公用事业公司: // * [@ id =“ 1561479354688-0-uiGrid-00CG-cell”] / div

好消息是,除了13位大数字外,其他所有内容都保持不变。我希望我可以以某种方式从客户名中删除该13位数字,并将其用于创建Utility公司的xpath。我找到的最接近的答案是在这里:Webdriver. How to retrieve the xpath of found element?

但是我不知道如何使它适应我的代码。这是我的摘录:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.select import Select
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By


#open Base account for first entry on list
block = WebDriverWait(driver,10)
block.until(EC.visibility_of_element_located((By.CLASS_NAME, "modal-content")))
driver.switch_to.active_element
Customers = driver.find_elements_by_xpath('//a[contains(@href, "futuresimple")]')

#Customer.click()
for e in Customers:
    print(e.text)
#    Utility = inputElement.find_element_by_xpath('./preceding-sibling::')

Customers[0].click()

0 个答案:

没有答案