selenium与页面的交互

Posted yuntimer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了selenium与页面的交互相关的知识,希望对你有一定的参考价值。

一、WebDriver 浏览器的属性

  WebDriver 提供了很多属性来支持对浏览器的操作,例如,获取测试地址、多窗口的处理、获取浏览器的名称等。

1、获取测试的地址

  方法:current_url

from selenium import webdriver

driver = webdriver.Firefox()
driver.maximize_window()
driver.get(‘http://www.baidu.com/‘)
driver.implicitly_wait(30)
print(‘测试地址为:{0}‘.format(driver.current_url))
driver.quit()

2、获取当前页面代码

  方法:page_source

print(‘页面代码如下:{0}‘.format(driver.page_source))

3、获取当前 Title

  方法:title

print(‘当前的Title为:{0}‘.format(driver.title))

4、页面的前进和后退

  方法:前进用到的方法是 forward,后退用到的方法是 back

from selenium import webdriver
import time as t
driver = webdriver.Firefox()
driver.maximize_window()
driver.get(‘http://www.baidu.com/‘)
t.sleep(2)
driver.get(‘http://www.bing.com‘)
t.sleep(2)
#返回到百度
driver.back()
print(‘当前URL为:{0}‘.format(driver.current_url))
t.sleep(2)
#前进到bing
driver.forward()
print(‘当前URL为:{0}‘.format(driver.current_url))
driver.quit()

5、关闭程序

  在 selenium 中,quit 方法用来退出驱动程序(Driver)并关闭执行的浏览器;而 close 方法用来关闭执行的浏览器,所以关闭程序建议使用 quit 方法。

6、加载测试地址

  在 UI 自动化测试中,打开测试地址用到的方法是 get 方法,它的参数是要打开的测试页面的地址。

driver.get(‘http://mail.sina.com.cn/‘)

7、多窗口实践

  窗口处理的方法,current_window_handle 用来获取当前浏览器的窗口句柄,window_handles 用来获取浏览器的所有窗口句柄。如下,实现在新浪登录页面点击注册,在注册页面邮箱地址输入框中输入邮箱地址,再次跳转到登录页面。

 

 

 

 

 

谢谢查看,笔记持续修改完善!

2019-10-13

以上是关于selenium与页面的交互的主要内容,如果未能解决你的问题,请参考以下文章

在 Java 中使用 Selenium 与 wep 页面交互时遇到问题

selenium-2:导航及页面交互

selenium与页面交互之二:webelement类的属性

[将Winium(+ Selenium)与python一起使用只允许我打开该应用程序,但不会与之交互?

在python selenium中与动态标签交互元素

元素当前不可见,因此可能无法与之交互,Selenium Dropdown Box Python