Пожалуйста, проверьте ниже решение, используя содержит и ID
Xpath с содержит
element= WebDriverWait(self.driver, 30).until(
EC.element_to_be_clickable((By.XPATH, '//*[contains(text(), 'More information')]')))
self.driver.execute_script("arguments[0].click();", element)
или
Xpath с идентификатором
element= WebDriverWait(self.driver, 30).until(
ec.element_to_be_clickable((By.ID, "//a[@id='mc-lnk-moreInfo']")))
self.driver.execute_script("arguments[0].click();", element)
Рабочий раствор:
driver = webdriver.Chrome(executable_path=r"C:\New folder\chromedriver.exe")
driver.maximize_window()
wait = WebDriverWait(driver, 10)
driver.get("your url")
childframe = wait.until(EC.presence_of_element_located((By.NAME, "mainFrame")))
driver.switch_to.frame(childframe)
element=wait.until(EC.element_to_be_clickable((By.ID, "mc-lnk-moreInfo")))
print element.text
element.click()
Примечание: , пожалуйста, добавьте ниже импорта в ваше решение
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
Вывод: