如何获取在frame中的元素。

qq_20271043 2019-08-08 08:58:25
我这边一个网页iframe中的元素始终获取不到,尝试过,用了CSS XPATH ID等方式,包括 js,但是都是:
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":".html body.z-body div.z-toolbar a#a_add.easyui-linkbutton.l-btn.l-btn-plain"}


下面是代码


# coding=utf-8

from selenium import webdriver
import re
import time
from selenium.webdriver.common.keys import Keys

driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(6) #重要
driver.get("http://localhost:8006")#打开网页

# 页面元素未加载出来的问题(10秒内每隔500毫秒扫描1次页面变化,
# 当出现指定的元素后结束。driver是前面操作webdriver.chrome()的句柄 )

def waiting():
wait = ui.WebDriverWait(driver,10)
wait.until(lambda driver: driver.find_element_by_方法("定位路径自己来"))


#页面登陆。(测试)
driver.find_element_by_xpath("/html/body/div/form/table/tbody/tr[2]/td[2]/input").send_keys('1234')
driver.find_element_by_xpath("/html/body/div/form/table/tbody/tr[1]/td[2]/input").send_keys('admin')
driver.find_element_by_xpath("/html/body/div/form/table/tbody/tr[4]/td/input[1]").click()


#订单明细页面打开
driver.find_element_by_xpath("/html/body/div[2]/div[2]/div/div[2]/div[1]/div[1]").click()
driver.find_element_by_xpath("/html/body/div[2]/div[2]/div/div[2]/div[2]/ul/li[2]/div/a/span[2]").click()


#切入iframe
#iframe1 = driver.find_element_by_xpath("/html/body/div[4]/div/div/div[2]/div[2]/div/iframe")
frame = driver.find_elements_by_tag_name("iframe")[0]
driver.switch_to.frame(frame)

#查看页面
actions = driver.window_handles
driver.switch_to.window(actions[0])

#js尝试
xy = "var q = document.getElementById('a_add')"
a = driver.execute_script(xy)
print(a)
print("OK")
b=driver.find_element_by_css_selector(".html body.z-body div.z-toolbar a#a_add.easyui-linkbutton.l-btn.l-btn-plain")
print(b)




...全文
165 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
文盲老顾 2019-08-09
  • 打赏
  • 举报
回复
document.getElementById('iframeId').contentWindow.document.getElementById('iframe中页面的控件ID')

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧