【发布时间】:2017-08-10 06:42:18
【问题描述】:
我想输入一个搜索词然后转到下一页。在新页面中单击一个链接。如何使用 selenium 和 python 做到这一点。我尝试使用下面给出的代码,但它给出了错误索引“ElementNotInteractableException”。我使用的代码是
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
driver = webdriver.Firefox()
driver.get("https://www.accessdata.fda.gov/scripts/cder/daf/")
#Select element by id:
inputElement = driver.find_element_by_id("searchterm")
#Input search term=drugname
inputElement.send_keys('lomitapide')
#Now you can simulate hitting ENTER:
inputElement.send_keys(Keys.ENTER)
#wait until element located
download_link = WebDriverWait(driver,20).until(EC.presence_of_element_located((By.ID, "collapseApproval")))
download_link.click()
#Click on Review to download the pdf
driver.find_element_by_link_text("Review").click()
browser.quit()
【问题讨论】:
-
你想在这里做什么
window_1 = driver.window_handles[1]?您只搜索了文本lomitapide,并且您在同一个选项卡/窗口中,您在哪里找到new window? -
最初我试图通过 id 使用 find_element 单击新页面中的链接“批准,日期.....”,但它显示错误“未找到元素”所以我怀疑这个错误是因为当我试图打开下一页时控制在第一页。
-
根据您的问题描述以及确切的错误和完整的错误堆栈跟踪,使用您的最佳代码尝试更新问题。
-
非常感谢您会尽快回复您
-
你想在这里找到什么
presence_of_element_located((By.ID, "collapseApproval")?那是div,无论如何都不能点击。你能总结一下你所有的具体手动步骤吗?
标签: python selenium window-handles