有时,使用selenium  定位页面元素时,浏览器明明打开的是需要定位的页面,但就是定位不到元素.打印一下元素page_source,会发现源码与页面不同. 主要问题是页面没有加载完成导致,需要设置一个等待时间.所以正常情况下,只要click()点击后有页面跳转,在driver.switch_to.window(driver.window_handles[0]) 切换到新页面前,最好设置一下等待时间.防止获取不到元素 切换到最新窗口: n=driver.window_handles #获取当前…
在页面操作过程中有时候点击某个链接会弹出新的窗口,这时就需要主机切换到新打开的窗口上进行操作.WebDriver提供了switch_to.window()方法,可以实现在不同的窗口之间切换. 以百度首页为例: from selenium import webdriver import time driver = webdriver.Chrome() driver.implicitly_wait(10) driver.get("http://www.baidu.com") #获得百度搜索…
想一下这样的场景,打开页面A点击一个链接,在一个新的窗口打开页面B,由于之前的driver实例对象在页面A,但是你接下来操作的元素在页面B中,此时脚本就会报错找不到元素.该场景需要使用到selenium的switch_to.window()方法进行窗口切换. 演示场景:打开百度首页(页面A),点击新闻链接(在一个新窗口打开页面B),点击新闻界面的互联网专题. 代码实现如下: from selenium import webdriver import time # 创建Chrome实例对象 dri…
来源: http://blog.csdn.net/anniejunyan/article/details/23257327  Selenium + Webdriver 学习(五) frame下元素定位 http://blog.csdn.net/huilan_same/article/details/52200586   selenium之 定位以及切换frame(iframe) frame标签有frameset.frame.iframe三种,frameset跟其他普通标签没有区别,不会影响到正常…
driver.close()关闭当前窗口 driver.quit()退出驱动关闭所有窗口 from selenium import webdriver from time import sleep driver = webdriver.Chrome() driver.get('http://sahitest.com/demo/index.htm') print(driver.current_window_handle) # 查看当前window handle driver.find_elemen…
问题描述: 自动化由首页切换到分页面,打开了一个新的窗口,不过,定位不到这个窗口的元素,通过开发者工具是可以查到这个元素的 原因是: 因为窗口句柄还停留在上一个页面,所以导致无法定位元素.报错 "元素不可交互". 因此要解决的问题就是先定位到当前页面(也就是跳转后的页面)然后再进行元素的定位. 几种常见的窗口句柄操作: handles = driver.window_handles #获取当前浏览器的所有窗口句柄driver.switch_to.window(handles[-1])…
Windows Driver Kit Version 7.1.0 ( 也就是 7600.16385.1 ) 下载地址 http://download.microsoft.com/download/4/A/2/4A25C7D5-EFBE-4182-B6A9-AE6850409A78/GRMWDK_EN_7600_1.ISO…
Can't connect to X11 window server using ':0.0' 解决方法 1. 以oracle 用户登陆X window 或者 2. root 身份执行 # xhost + ======================= [oracle@rusky-oracle11g database]$ ./runInstaller //安装报错 Starting Oracle Universal Installer... Checking Temp space: must b…
driver.quit()与driver.close()的不同:driver.quit(): Quit this driver, closing every associated windows;driver.close(): Close the current window, quiting the browser if it is the last window currently open. 翻译成中文: driver.close()     --  关闭当前窗口,如果是当前打开的最后一个…
与在新窗口打开一个网页后需要切换窗口才能定位元素一样,在iframe标签中的元素也不能直接定位,需要切换到对应的iframe框架中才能进行元素定位. 完成网页框架切换操作需要用selenium中的两个方法 driver.switch_to.frame(frame_reference):切换到网页框架内,frame_reference为框架元素 driver.switch_to.default_content():退出网页框架 下面以网易邮箱(https://www.126.com/)演示网页的框…