Python3 Selenium WebDriver網頁的前進、后退、刷新、最大化、獲取窗口位置、設置窗口大小、獲取頁面title、獲取網頁源碼、獲取Url等基本操作


Python3 Selenium WebDriver網頁的前進、后退、刷新、最大化、獲取窗口位置、設置窗口大小、獲取頁面title、獲取網頁源碼、獲取Url等基本操作

通過selenium webdriver操作網頁前進、后退、刷新、最大化、獲取窗口位置、設置窗口大小、獲取頁面title、獲取網頁源碼、獲取Url等基本操作:

from selenium import webdriver
#打開瀏覽器
driver = webdriver.Ie(executable_path = "e:\\IEDriverServer")  
#輸入網址
driver.get("http://wenku.baidu.com")
#向后退
driver.back() 
#向前進
driver.forward() 
#刷新頁面
driver.refresh()  
#設置超時等待的時間,超過不再等待
driver.set_page_load_timeout(2) 

#捕獲超時異常
try:   
   driver.get("http://www.sohu.com")
except Exception as e:
    print(e)

#窗口最大化
driver.maximize_window() 
#獲取坐標位置{'y': -8, 'x': 1672}
driver.get_window_position() 
#判斷使用的瀏覽器u'internet explorer'
driver.name  
#設置瀏覽器坐標
driver.set_window_position(y=200, x=400) 
#y:指的上下走,屏幕最頂部y=0 ;x:指的左右走 ,最左邊x=0,不再當前屏幕的會出現負數
#瀏覽器最大化的狀態再去設置坐標就不起作用了

driver.get_window_position()['x'] #獲取x軸的位置
driver.get_window_position()['y'] #獲取y軸的位置

#獲取瀏覽器的窗體大小{'width': 160, 'height': 32}
driver.get_window_size() 
#獲取瀏覽器的寬度
driver.get_window_size()['width'] 
#獲取瀏覽器的高度
driver.get_window_size()['height'] 
#設置瀏覽器的窗體大小
driver.set_window_size(100,200) 

print(driver.title #獲取頁面title,可以用於做斷言看打開的頁面對不對搜狐)

assert u"搜狐" == driver.title  #斷言標題是否正確
assert u"搜狐2" == driver.title #斷言標題出錯
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AssertionError

driver.page_source() #獲取網頁源碼,返回的其實是unicode字符串

#抓取頁面源碼時,webdriver可以觸犯頁面上的js動態數據,但是它的缺點是比較慢;之前講過的

#request抓取源碼快,但只適用於靜態頁面,無法抓取js的動態頁面內容
#抓取源碼是非常重要的,可以隨意操作
driver = webdriver.Ie(executable_path = "e:\\IEDriverServer")
driver.get("http://www.iciba.com")
driver.page_source[:50] #獲取第50行的頁面源碼
u'<html><head><style></style><avalon class="avalonHi'
u"熱門詞匯" in driver.page_source #判斷指定字段是不是在頁面源碼中存在True

#將頁面源碼轉碼成中文,加ignore避免無法識別的生僻字報錯
driver.page_source.encode("gbk","ignore") 

#將頁面源碼轉成html文件
html=driver.page_source.encode("gbk","ignore") 

#獲取當前頁面的url u'http://www.iciba.com/
driver.current_url  

 


免責聲明!

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



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