Selenium 切换 Frame
我们知道网页中有一种节点叫作 iframe ,也就是子 Frame ,相当于页面的子页面,它的结构和外部网页的结构完全一致。
Selenium 打开页面后,它默认是在父级 Frame 里面操作,而此时如果页面中还有子 Frame ,它是不能获取到子 Frame 里面的节点的。
这时就需要使用 switch_to.frame() 方法来切换 Frame,然后再进行下一步操作,如下,我们来获取 “请放置到这里!” 这段文本内容:
from selenium import webdriver browser = webdriver.Chrome() browser.get("http://www.runoob.com/try/try.php?filename=jqueryui-api-droppable") browser.switch_to.frame("iframeResult") # 先通过id切换到子Frame页面 content = browser.find_element_by_id("droppable").text # 再获取子Frame页面中想要的数据 print(content)