python3+selenium入门15-执行JavaScript】的更多相关文章

有时有些功能需要通过js来执行,比如拖动浏览器的滚动条.通过execute_script()方法可以执行js的代码 window.scrollTo()可以传两个参数,第一个参数是下方滚动条的位置,第二个参数是右边滚动条的参数 from selenium import webdriver import time dr = webdriver.Firefox() dr.get('https://www.baidu.com') dr.set_window_size(600,600)#设置浏览器大小,让…
作为一个测试,在最近两年应该有明显的感觉.那就是工作变的难找,要求变的高了,自动化测试,性能测试等.没有自动化测试能力,只会点点点工作难找不说,工资也不高.所以还是要学习一些技术.首先要学习一门编程语言.然后自动化入门可以学习selenium.有java基础可以使用java.没有语言基础的推荐学习python3.网上的教程很多,推荐廖雪峰的python教程. selenium的学习更多是个入门,过渡的作用.感觉其实ui自动化很少用.而且能测试到的东西较少.之后可以继续去学习接口自动化相关的东西.…
在打开新的浏览器窗口时,如果要定位新窗口的元素,需要先切换到这个新打开的窗口中,才能定位到该窗口下的元素. current_window_handle:获取当前句柄.可以把句柄理解成窗口的身份证 window_handles:获取所有打开窗口的句柄 from selenium import webdriver import time dr = webdriver.Chrome() dr.get('https://www.baidu.com') dr.maximize_window() win_h…
Keys类提供了键盘上几乎所有按键的方法.通过send_keys()方法不仅可以用来模拟键盘输入,还可以用它来模拟键盘上的按键.包括组合键,比如Ctrl+a等 需要导入Keys类 from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.keys import Keys from selenium import webdriver import time dr = webdriver.Chrome…
使用click()可以模拟鼠标的左键点击事件,现在的web页面中有很多其他的鼠标交互方式,比如鼠标右击.双击.悬停.鼠标拖放等功能.在WebDriver中,将这些关于鼠标操作的方法封装在ActionChains类. 导入ActionChains类 from selenium.webdriver.common.action_chains import ActionChains ActionChains类常用的方法: context_click():鼠标右键 double_click():鼠标双击…
在使用selenium进行操作时,有时候在定位元素时会报错.这可能是因为元素还没有来得及加载导致的.可以等过元素等待,等待元素出现.有强制等待,显式等待,隐式等待. 强制等待 就是之前文章中的time.sleep(),只是为了看到界面操作效果才那样设置的.这个是不管找没找到都会等待的.基本代码中不会用这个. 显式等待 WebDriverWait类是WebDriver提供的等待方法.在设置的时间内,会每隔一段时间去检查一次当前页面元素是否存在,如果超过设置时间还没有见到到就抛出异常.具体格式如下:…
使用selenium打开浏览器的时候,需要先去selenium官网下载一个对应浏览器的的driver插件.selenium下载.官网在国外可能打不开.或者可以从我网盘下载,但可能不是最新的网盘链接.将下载好的文件解压出来,将.exe文件放到python3的安装目录下即可. from selenium import webdriver dr = webdriver.Firefox() dr.get('https://www.baidu.com') dr.close() webdriver.Fire…
有时候需要把一些浏览器当前窗口截图下来,比如操作抱错的时候.WebDriver类下.get_screenshot_as_file()方法可窗口截图,需要传入一个截图文件名的路径.window要用\\当做路径符 from selenium import webdriver import time dr = webdriver.Firefox() dr.get('https://www.baidu.com') dr.find_element_by_id('kw').send_keys('seleni…
上传文件一种方式是通过定位input标签,然后使用send_keys()方法传入需要上传文件的路径.另一种是使用第三方插件去上传文件.下面看下imput标签的方式.工具可以自己查下. <!DOCTYPE html> <html> <head> </head> <body> <form action="demo_form.php"> <input type="file" name="…
可以把cookie理解为自己账户的身份证.因为http协议是无状态的,上一个请求和下一个请求没有关系.但是有时需要有关联.比如登录之后,才能进行操作这样的设置.这个就是cookie在起作用.登录成功时,服务器会给浏览器一个cookie,浏览器会解析存在本地.然后同一个网站,下一次请求时就会把这个cookie带上,告诉服务器是哪个用户在操作.在关闭浏览器时cookie有效期结束. WebDriver提供了一些用来操作cookie的方法: get_cookies():获得cookie所有信息,返回的…