selenium與頁面交互之一:webdriver瀏覽器的屬性


selenium提供了許多API方法與頁面進行交互,如點擊、鍵盤輸入、打開關閉網頁、輸入文字等。

webdriver對瀏覽器提供了很多屬性來對瀏覽器進行操作,常用的如圖:

get(url)、quit()  maximize_window()  current_url

back()   forward()    current_window_handle與window_handles

以打開百度首頁-----點注冊,到注冊也注冊------再轉到登錄頁登錄為例說明

 具體代碼如下:

#coding=utf-8
import time
from selenium import webdriver

driver=webdriver.Firefox()
driver.maximize_window()
driver.implicitly_wait(30)
driver.get('https://www.baidu.com/')
driver.find_element_by_partial_link_text(u'登錄').click()
dlwindow=driver.current_window_handle#取到登錄窗口的句柄
driver.find_element_by_link_text(u'立即注冊').click()
windows=driver.window_handles#取所有窗口的句柄
for item in windows:
if item!=dlwindow:
driver.switch_to_window(item)#如果item不是登錄那個窗口的句柄(即 是注冊窗口的句柄),driver就swithto注冊窗口
#注冊
driver.find_element_by_id('TANGRAM__PSP_3__userName').send_keys('pandaa')
driver .find_element_by_id('TANGRAM__PSP_3__phone').send_keys('18298888888')
time.sleep(3)
#去登錄頁面用新注冊的賬號登錄百度
driver.switch_to_window(dlwindow)
driver.find_element_by_id('TANGRAM__PSP_10__userName').send_keys('pandaa')
driver.find_element_by_id('TANGRAM__PSP_10__password').send_keys('******')
driver.quit()

forward() back()

打開百度---點新聞到新聞頁面---點back,回到首頁----點
forward,到新聞頁面
代碼如下:
#coding=utf-8
import time
from selenium import webdriver

driver=webdriver.Firefox()
driver.maximize_window()
driver.implicitly_wait(30)
driver.get('https://www.baidu.com/')
driver.find_element_by_partial_link_text(u'新聞').click()
driver.back()
time.sleep(3)
driver.forward()
time.sleep(3)
driver.quit()
 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM