一、打開網址
方法說明:webdriver.Firefox()用於創建一個火狐瀏覽器的webdriver
driver.get(url)用戶打開固定的網址
實例如下:
self.driver = webdriver.Firefox(executable_path = 'D:\\python+Selenium\\geckodriver.exe') self.url = u"https://www.baidu.com" self.driver.get(self.url)
二、最大化瀏覽器、設置瀏覽器大小
方法說明:driver.maximize_window()用於最大化瀏覽器
driver.set_window_size()用於設置瀏覽器的大小,以像素為單位
實例如下:
self.driver.maximize_window() self.driver.set_window_size(480, 800)
三、瀏覽器前進、后退
方法說明:driver.back()用於瀏覽器后退操作
driver.forward()用於瀏覽器前進操作
def setUp(self): self.driver = webdriver.Firefox(executable_path = 'D:\\python+Selenium\\geckodriver.exe') self.url = u"https://www.baidu.com" self.driver.get(self.url) def testBrowser(self): second_url = "http://news.baidu.com/" self.driver.get(second_url) sleep(5) self.driver.back(); sleep(5) self.driver.forward() sleep(5)
四、瀏覽器句柄切換
方法說明:current_window_handle:獲得當前窗口句柄
window_handles:返回所有窗口的句柄到當前對話
switch_to.window(窗口句柄):切換到對應的窗口
實例如下:
nowhandle=driver.current_window_handle driver.find_element_by_name("tj_trnews").click() time.sleep(3) #由於百度新聞窗口打開,所以要指向新窗口,即百度新聞窗口 allhandles=driver.window_handles for handle in allhandles: if(handle!=nowhandle): driver.switch_to.window(handle)
五、綜合用例
打開百度首頁,點擊新聞之后回退到主頁,再點擊hao123再回主頁,再點擊地圖再回主頁、再點擊視頻再回主頁、再點擊貼吧再回主頁、再點擊學術再回主頁
def testBackForword(self): elements = self.driver.find_elements_by_class_name("mnav") elementSize = len(elements) print(elementSize) for num in range(0,elementSize-1): elements = self.driver.find_elements_by_class_name("mnav") name = elements[num].get_attribute('name') print(name) elements[num].click() sleep(2) self.driver.back() sleep(2)