selenium3使用谷歌無頭瀏覽器、截圖


無頭瀏覽器即為Headless Browser,是沒有圖形用戶界面的web瀏覽器,通常是通過編程或命令行界面來控制。
在正常使用selenium的時候,你必須擔心CPU和/或內存的使用。這兩種方式都與必須從被請求的URL中顯示顯示的圖形的瀏覽器相關聯。
當使用一個無頭的瀏覽器時,我們不用擔心這個。因此,我們可以預期我們編寫的腳本的內存消耗會降低,執行速度也會更快。當有的人說,那我沒法看到瀏覽器響應的過程,我不能在這邊盯着瀏覽器自己執行我的用例。。。喔犒!寫自動化本來就是為了效率的,做截圖就可以了嘛,盯着?你還不如下手點呢。。。咳咳,書接上文

下載安裝selenium,谷歌瀏覽器 自行下載
谷歌瀏覽器與 驅動的對應關系如下圖

 

 

ChromeDriver倉庫地址:
http://chromedriver.storage.googleapis.com/index.html

谷歌瀏覽器查看版本方式:

 

 

下載好驅動后放置在指定文件夾內備用。

編寫腳本

import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

#創建參數對象
chrome_options = Options()
#固定寫法
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu')

#驅動路徑
path = r'C:\Chromedriver\chromedriver.exe'

#創建瀏覽器對象
browser = webdriver.Chrome(executable_path=path,chrome_options=chrome_options)
#請求地址
url ='http://www.baidu.com/'
#發出請求
browser.get(url)
#休眠三秒
time.sleep(3)
#截圖並保存在本地C盤TEST文件夾內
browser.save_screenshot("C:\\TEST\\baid2.png")
#截圖保存在項目下
browser.save_screenshot('ph\\baid.png')

#其他截圖方法
#browser.get_screenshot_as_base64()
#browser.get_screenshot_as_file()
#browser.get_screenshot_as_png()

#退出
browser.quit()

  執行后生成圖片。

 

 

selenium4聖誕節已經發布,然后新功能API支持的更廣泛,selenium的文檔,官方自selenium2發布以來就從來沒有更新過,哪怕是selenium3發布之后,selenium的官方也是不帶動的,這次selenium的官方終於把selenium4的官方文檔更新了。。。。。額,真香。


免責聲明!

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



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