selenuim Web测试工具
安装浏览器驱动
查看版本
需要一个和浏览器版本匹配的驱动
下载网站
ChromeDriver版本 |支持的Chrome版本|
详细介绍
https://blog.csdn.net/weixin_43841082/article/details/88851483
https://blog.csdn.net/weixin_36279318/article/details/79475388
https://www.jianshu.com/p/568689e698d1
驱动下载
Chrome驱动文件下载:
https://chromedriver.storage.googleapis.com/index.html?path=2.35/
Firefox驱动文件下载:
配置环境变量
将下载的浏览器驱动文件(例如:chromedriver、geckodriver)放到和谷歌浏览器同一目录下即可
C:/Program Files (x86)/Google/Chrome/Application
别忘了配置环境变量
然后把复制的文件放到anaconda的script文件夹里面
浏览器设置
窗口操作
driver.maximize_window() #窗口最大化
driver.set_window_size(480, 800) #设置窗口大小
driver.back() #返回界面
driver.forward() #前进界面
driver.refresh() #刷新界面
调节最大等待时间
wait = WebDriverWait(driver, 15)
driver.quit() #退出相关驱动程序,并关闭所有窗口
driver.close() #关闭当前一个窗口
切换网页窗口
driver.execute_script('window.open()') 开启一个选项卡
windows=driver.window_handles 获得当前浏览器所有窗口
driver.switch_to.window(windows[0]) 切换到最左侧窗口
driver.switch_to.window(windows[-1]) 切换到最新打开窗口(注:也就是最右侧窗口)
driver.get_screenshot_as_file("scr.jpg") 窗口截图
driver.current_window_handle 获得当前窗口句柄
driver.window_handles 返回所有窗口的句柄到当前会话
driver.switch_to.window() 用于切换到相应的窗口,与上一节的switch_to.frame()类似,前者用于不同窗口的切换,后者用于不同表单之间的切换
在页面操作过程中有时候点击某个链接会弹出新的窗口,这时就需要主机切换到新打开的窗口上进行操作。WebDriver提供了switch_to.window()方法,可以实现在不同的窗口之间切换。
进入注册窗口
for handle in all_handles:
if handle != sreach_windows:
driver.switch_to.window(handle)
print('跳转到注册窗口')
driver.find_element_by_name("account").send_keys('123456789')
driver.find_element_by_name('password').send_keys('123456789')
time.sleep(2)
滚动条操作
driver.execute_script("window.scrollBy(0,5000)") 将滚动条从 0px的地方移动到5000px的地方
driver.execute_script("window.scrollTo(0, document.body.scrollHeight)") 滚动到页面底部
driver.execute_script("window.scrollTo(document.body.scrollHeight,0)") 滚动到页面顶部
driver.execute_script("window.scrollTo(document.body.scrollHeight,500)") 将滚动条向上移动500px单位
拖动浏览器滑块函数
for