1. 程式人生 > 程式設計 >Python爬蟲之Selenium實現視窗截圖

Python爬蟲之Selenium實現視窗截圖

前言:由程式去執行的操作不允許有任何誤差,有些時候在測試的時候未出現問題,但是放到伺服器上就會報錯,而且列印的錯誤資訊並不十分明確。這時,我在想如果在指令碼執行出錯的時候能對當前視窗截圖儲存,那麼通過圖片就可以非常直觀地看出出錯的原因。WebDriver提供了截圖函式get_screenshot_as_file()來擷取當前視窗。

本章中用到的關鍵方法如下:

get_screenshot_as_file():截圖

from selenium import webdriver

driver = webdriver.Chrome()
driver.get('https://www.baidu.com/')

# 截圖,圖片字尾最好為.png,如果是其他的執行的時候會有警告,但不會報錯
driver.get_screenshot_as_file("D:\\baidu_index.png")

driver.quit()

例項:

#視窗截圖操作
#coding utf-8

from selenium import webdriver
from time import sleep

driver = webdriver.Firefox()

url = "http://www.baidu.com"

driver.get(url)

driver.find_element_by_id('kw').send_keys('selenium python')
driver.find_element_by_id('su').click()

sleep(2)

driver.get_screenshot_as_file("D:\\baidu_error.jpg")

driver.quit()

執行結果:

有個warning,什麼意思呢,就是說截圖最好是使用 .png格式的圖片,而我的程式碼中使用的是.jpg格式,但是,不影響最終結果

file type. It should end with a `.png` extension
"type. It should end with a `.png` extension",UserWarning)  

網頁截圖: - 不出意外,渣度第一時間給你推送廣告!!呵呵呵!-

Python爬蟲之Selenium實現視窗截圖

Selenium文集傳送門:

標題 簡介
Python爬蟲 - Selenium(1)安裝和簡單使用 詳細介紹Selenium的依賴環境在Windows和Centos7上的安裝及簡單使用
Python爬蟲 - Selenium(2)元素定位和WebDriver常用方法 詳細介紹定位元素的8種方式並配合點選和輸入、提交、獲取斷言資訊等方法的使用
Python爬蟲 - Selenium(3)控制瀏覽器的常用方法 詳細介紹自定義瀏覽器視窗大小或全屏、控制瀏覽器後退、前進、重新整理瀏覽器等方法的使用
Python爬蟲 - Selenium(4)配置啟動項引數 詳細介紹Selenium啟動項引數的配置,其中包括無介面模式、瀏覽器視窗大小設定、瀏覽器User-Agent (請求頭)等等
Python爬蟲 - Selenium(5)滑鼠事件 詳細介紹滑鼠右擊、雙擊、拖動、滑鼠懸停等方法的使用
Python爬蟲 - Selenium(6)鍵盤事件 詳細介紹鍵盤的操作,幾乎包含所有常用按鍵以及組合鍵
Python爬蟲 - Selenium(7)多視窗切換 詳細介紹Selenium是如何實現在不同的視窗之間自由切換
Python爬蟲 - Selenium(8)frame/iframe表單巢狀頁面 詳細介紹如何從當前定位的主體切換為frame/iframe表單的內嵌頁面中
Python爬蟲 - Selenium(9)警告框(彈窗)處理 詳細介紹如何定位並處理多類警告彈窗
Python爬蟲 - Selenium(10)下拉框處理 詳細介紹如何靈活的定位並處理下拉框
Python爬蟲 - Selenium(11)檔案上傳 詳細介紹如何優雅的通過send_keys()指定檔案進行上傳
Python爬蟲 - Selenium(12)獲取登入Cookies,並新增Cookies自動登入 詳細介紹如何獲取Cookies和使用Cookies進行自動登入
Python爬蟲 - Selenium(13)設定元素等待 詳細介紹如何優雅的設定元素等待時間,防止程式執行過快而導致元素定位失敗
Python爬蟲 - Selenium(14)視窗截圖 詳細介紹如何使用視窗截圖
Python爬蟲 - Selenium(15)關閉瀏覽器 詳細介紹兩種關閉視窗的區別

到此這篇關於Python爬蟲之Selenium實現視窗截圖的文章就介紹到這了,更多相關Selenium 視窗截圖內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!