Selenium无法定位元素(Python)
我正在尝试搜寻房地产网站上的商品。它有一个aspx表单,必须在提交之前填写。
http://www.cbre.us/PropertyListings/Pages/Properties-for-
Sale.aspx
我只关心俄勒冈州的多户家庭财产。所以这是我的第一次尝试:
driver = webdriver.Firefox()driver.get("http://www.cbre.us/PropertyListings/Pages/Properties-for-Sale.aspx")
#Searching for multifamily residences
selectPropertyType = driver.find_element_by_id("ForSalePropertyType")
selectPropertyType.select_by_value("70")
#In the state of Oregon
selectState = driver.find_element_by_id("ForSaleState_ListBox1")
selectState.select_by_value("OR")
#Submit form
submitBtn = driver.find_element_by_id("ForSaleLooplinkSubmit")
submitBtn.click()
#Wait for results to load
WebDriverWait(driver, 5)
当我运行此脚本时,出现错误“找不到元素“ ForSalePropertyType”。在这里我在做什么错?
回答:
此元素位于中iframe
。您必须 切换到它的上下文 :
driver.switch_to.frame("ctl00_PlaceHolderMain_IFrameContent_IFrameContent")# searching for multifamily residences
selectPropertyType = driver.find_element_by_id("ForSalePropertyType")
selectPropertyType.select_by_value("70")
返回默认上下文:
driver.switch_to.default_content()
另外,请注意免责声明/使用条款中列出的政策,尤其是:
:(a)冒充任何个人或实体或歪曲您与任何其他个人或实体的隶属关系;
(c)通过网站发送连锁信或传销;或(d)试图通过该站点未经授权访问其他计算机系统。您同意不会以任何可能会损坏,禁用,负担过多或损害本网站或干扰任何其他方使用和使用本网站的方式使用本网站。
以上是 Selenium无法定位元素(Python) 的全部内容, 来源链接: utcz.com/qa/413722.html