python+selenium 屏幕截圖

一、掌握知識的目的:
當發現執行結果與預期結果不一致時,可以截圖,一目瞭然
二、學習方法:
兩種:
(1)、driver.get_screenshot_as_file(路徑+圖片名稱.png)
(2)、使用PIL(第三方庫,屬於Python的,目的是做圖像相關的操作)

區別:

1、第一種方法在selenium中最常見,但是有一種情況不能使用,即該界面是有彈框。JavaScript類型則只能使用pil

第一種方法:

def take_screenshot(self):
    file_path = ( “所想要路徑”)
    rq = time.strftime('%Y%m%d%H%M%S', time.localtime(time.time()))#通過時間進行命名
    screen_name = file_path +"\\" +rq + '.png'#雙斜槓的意思是轉譯\,目的是:路徑下的圖像,例如:c:\文件路徑\文件名.png
    try:
        self.driver.get_screenshot_as_file(screen_name)
        print("開始截圖並保存")

    except Exception as e:
       print("出現異常", format(e))

第二種方法:

首先,需要下載PIL庫,

PIL只有在python2中有,因此,針對python3的使用的是pillow模塊。

所以,如果需要安裝python3對應的PIL,應該選擇安裝pillow。

方法:

pip install pllow 加載成功後,可以import PIL 

import PIL
from PIL import Image,ImageGrab
import os
def take_screenshot1(self):

self.im = ImageGrab.grab()
self.im.save("路徑+圖片名稱.png")#保存圖片

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章