Selenium webdriver常用属性和方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Selenium webdriver常用属性和方法相关的知识,希望对你有一定的参考价值。
参考技术A 属性 属性描述driver.name 浏览器名称
driver.current_url 当前url
driver.title 当前页面标题
driver.page_source 当前页面源码
driver.current_window_handle 窗口句柄
driver.window_handles 当前窗口所有句柄
方法 方法描述
driver.back() 浏览器后退
driver.forward() 浏览器前进
driver.refresh() 浏览器刷新
driver.close() 关闭当前窗口
driver.quit() 退出浏览器
driver.switch_to.frame() 切换到frame
driver.switch_to.alert() 切换到alert
driver.switch_to.active_element() 切换到活动元素
源码:
from seleniumimport webdriver
from timeimport sleep
class Testcase(object):
def __init__(self):
self.driver = webdriver.Chrome()
self.driver.get('http://www.baidu.com')
self.driver.maximize_window()
def test_prop(self):
print(self.driver.name)#浏览器名称
print(self.driver.current_url)#url
print(self.driver.title)#网页的title
print(self.driver.window_handles)#句柄
print(self.driver.page_source)#查看源码
self.driver.quit()
def test_method(self):
self.driver.find_element_by_id('kw').send_keys('selenium')
self.driver.find_element_by_id('su').click()
sleep(2)
self.driver.back()#后退
sleep(2)
self.driver.refresh()#刷新
sleep(2)
self.driver.forward()#前进
self.driver.close()#只关闭当前tab
self.driver.quit()#关闭浏览器
def test_windows(self):
self.driver.find_element_by_link_text('新闻').click()
windows =self.driver.window_handles
while 1:
for win windows:
self.driver.switch_to.window(w)
sleep(2)
if __name__ =='__main__':
case = Testcase()
#case.test_prop()
#case.test_method()
case.test_windows()
selenium的webDriver核心属性和方法
1.核心属性
常用属性如下所示:
代码如下:
from selenium import webdriver
from time import sleep
class TestCase01(object):
def __init__(self):
self.driver = webdriver.Chrome()
self.driver.get('http://www.baidu.com')
self.driver.maximize_window()
def test_prop(self):
print(self.driver.name)# 浏览器名称
print(self.driver.current_url) # url
print(self.driver.title)
print(self.driver.window_handles) #可根据句柄来切换窗口
print(self.driver.page_source) #页面源码
self.driver.quit()
if __name__ == '__main__':
case = TestCase01()
case.test_prop()
运行的结果如下:由于只打开了一个窗口,所以只有一个句柄
2.核心方法
核心方法如下所示:
代码如下:
from selenium import webdriver
from time import sleep
class TestCase02(object):
def __init__(self):
self.driver = webdriver.Chrome()
self.driver.get('http://www.baidu.com')
self.driver.maximize_window()
def test_prop(self):
print(self.driver.name)# 浏览器名称
print(self.driver.current_url) # url
print(self.driver.title)
print(self.driver.window_handles)
print(self.driver.page_source)
self.driver.quit()
def test_method(self):
self.driver.find_element_by_id('kw').send_keys('selenium')
self.driver.find_element_by_id('su').click()
sleep(2)
self.driver.back() #显示的页面为百度一下
sleep(2)
self.driver.refresh()#对页面进行刷新
sleep(2)
self.driver.forward()#返回到查询selenium的页面
self.driver.close() # 只关闭当前tab
self.driver.quit() # 关闭浏览器
if __name__ == '__main__':
case = TestCase02()
# case.test_prop()
case.test_method()
3.使用句柄实现窗口的来回切换
代码实现中是打开了两个页面,使用switch_to.window方法实现窗口的切换
from selenium import webdriver
from time import sleep
class TestCase03(object):
def __init__(self):
self.driver = webdriver.Chrome()
self.driver.get('http://www.baidu.com')
self.driver.maximize_window()
def test_windows(self): #窗口的来回切换
self.driver.find_element_by_link_text('新闻').click()
windows = self.driver.window_handles
while 1:
for w in windows:
self.driver.switch_to.window(w)
sleep(2)
if __name__ == '__main__':
case = TestCase03()
case.test_windows()
以上是关于Selenium webdriver常用属性和方法的主要内容,如果未能解决你的问题,请参考以下文章
python selenium-webdriver 常用浏览器的操作