1. 程式人生 > >python-selenum3 第三天基本API——瀏覽器操作

python-selenum3 第三天基本API——瀏覽器操作

ges war 按鈕 ive 提示 打印 第一個 source cut

打開網頁並驗證

#驗證網頁
#打開火狐
driver = webdriver.Firefox(executable_path = "d:\\geckodriver")
#將地址賦值給變量fURL
fURL = "https://www.baidu.com"
#瀏覽
driver.get(fURL)


瀏覽器向前向後刷新

#打開火狐
driver = webdriver.Firefox(executable_path = "d:\\geckodriver")
#將地址賦值給變量fURL和sURL
fURL = "http://www.baidu.com"
sURL = "http://www.sogou.com"
#get方法打開百度頁面之後再打開搜狗
driver.get(fURL)
driver.get(sURL)
#後退到百度
driver.back()
#assert進行驗證 沒有發現這幾個字,出現後面的提示
assert driver.title.find(u"百度一下") >= 0,"沒有出現"
#前進到搜狗
driver.forward()
#assert進行驗證 沒有發現這幾個字,出現後面的提示
assert driver.title.find(u"搜狗") >=0,"沒有出現"
#刷新當前頁面
driver.refresh()

瀏覽器最大化

#打開瀏覽器
driver = webdriver.Firefox(executable_path = "d:\\geckodriver")
#將網址賦值給fURL變量
fURL = "http://www.baidu.com"
#登錄百度
driver.get(fURL)
#將窗口最大化
driver.maximize_window()


獲取title屬性值,並確定 通常做證明網頁打開正確性

#打開瀏覽器
driver = webdriver.Firefox(executable_path = "d:\\geckodriver")
#將網址賦值給fURL變量
fURL = "http://www.baidu.com"
#進入百度首頁
driver.get(fURL)
#窗口最大化
driver.maximize_window()
#獲取title屬性並賦值給變量title
title = driver.title
#控制臺輸出title信息
print("當前網頁的title屬性是:",title)
#斷言編寫 下面的斷言是unittest框架的斷言方法 後期會用到 這裏只是為了屬性編寫
#assertEqual(title,u"百度一下,你就知道","網頁title屬性值錯誤")

獲取HTML的源代碼,並斷言

driver = webdriver.Firefox(executable_path = "d:\\geckodriver")
fURL = "http://www.baidu.com"
driver.get(fURL)
driver.maximize_window()
#獲取網頁HTML源代碼 並賦值給pageSource
pageSource = driver.page_source
#在控制臺打印
print(pageSource)
#斷言編寫,查看源代碼中是否有貼吧這兩個字,一樣是unittest框架斷言
#assertTrue(u"貼吧" in pageSource,"沒有找到貼吧這兩個字")

查看網站地址,並斷言

driver = webdriver.Firefox(executable_path="d:\\geckodriver")
fURL = "http://www.baidu.com"
driver.get(fURL)
#獲取地址並賦值給pageUrl
pageUrl = driver.current_url
#在控制臺打印
print(pageUrl)
#斷言編寫,unittest框架斷言
#assertEqual(pageUrl,"http://www.baidu.com","當前網頁網址非預期結果")

窗口跳轉

driver = webdriver.Firefox(executable_path="d:\\geckodriver")
fURL = "https://news.baidu.com/"
driver.get(fURL)
#隱式等待
driver.implicitly_wait(10)
#獲取當前窗口句柄 並賦值給handle
handle = driver.current_window_handle
#驗證控制臺打印
print(handle)
#定位網頁、貼吧等鏈接整體賦值給s
s = driver.find_element_by_partial_link_text("網頁")
#點擊第一個按鈕
s.click()
#顯示所有的句柄賦值給all_h
all_h = driver.window_handles
#循環判斷是否與首頁句柄相等
for i in all_h:
    if i != handle:
        #如果不等於就切換
        driver.switch_to.window(i)
print(driver.title)
#驗證
if u"百度一下" in driver.title:
    print(u"頁面打開正常")
else:
    print(u"失敗")
#返回
driver.switch_to.window(handle)

python-selenum3 第三天基本API——瀏覽器操作