国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Selenium chrome headless模式下加載擴展的問題

這篇具有很好參考價值的文章主要介紹了Selenium chrome headless模式下加載擴展的問題。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

引言

Selenium headless是比較常用的自動化測試手段,但是在很長一段時間無法加載擴展。本文將介紹Selenium chrome如何加載擴展以及headless模式下加載擴展的問題及解決方式。

加載擴展

chrome_option = webdriver.ChromeOptions()
# 方式一
chrome_option.add_argument("--user-data-dir="+plugin_path)
# 方式二
chrome_options.add_extension(plugin_path)
# 方式三
chrome_options.add_argument('load-extension='+plugin_path)

推薦使用第三種方式。
另外chrome安裝的插件在C:\Users(username)\AppData\Local\Google\Chrome\User Data\Default\Extensions 下可找到

headless模式下加載插件失敗

在正常模式下加載插件是運行正常的,然而切換到headless之后,加載的插件可能無法運行。
在網(wǎng)上找了一圈資料,概括起來就是selenium chrome是不支持headless模式下加載插件的。

原因

翻了一下stackoverflow,里面有chromium的開發(fā)提到:
We’ve decided against implementing extension support in headless mode for now because supporting all the required features is rather complex.
大致是headless模式支持插件必需的特性相當(dāng)復(fù)雜。

另外一位chromium的開發(fā)更加細致地說明了這一點:

  1. A lot of extension APIs are specific to non-headless browsers, so can’t be supported in headless chrome. 很多插件的api是針對有界面的瀏覽器的,因此headless chrome難以支持插件。
  2. Of the APIs we could feasibly support, only parts are implemented in such a way that we can currently reuse them for headless chrome. 在可以支持的api中,只有部分實現(xiàn)的方式是目前可以在無頭chrome中重用它們。(換言之就是大部分還沒能做到重用)
  3. Changing this requires a lot of refactoring that doesn’t seem justified given the benefit we’d gain. 支持這一特性需要大量的重構(gòu),不合理(我們又不996,??)。

最新方式

上述提到的原因還是在2020年的。都2023年了,foxfire都老早支持headless加載插件了,不會chromiun還沒有實現(xiàn)吧。
果然,在這篇官方博客中,新的headless被提出。即

  • before
chrome_options = ChromeOptions()
chrome_options.headless = True
driver = webdriver.Chrome(options=options)
driver.get('http://selenium.dev')
driver.quit()
  • after
chrome_options = ChromeOptions()
chrome_options.add_argument("--headless=new")
driver = webdriver.Chrome(options=options)
driver.get('http://selenium.dev')
driver.quit()

總結(jié)

如果你的代碼使用headless無法正常加載插件,檢查下代碼中的headless配置,被將其設(shè)置為最新的方式。文章來源地址http://www.zghlxwxcb.cn/news/detail-635973.html

chrome_options.add_argument("--headless=new")

到了這里,關(guān)于Selenium chrome headless模式下加載擴展的問題的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • selenium.chrome怎么寫擴展攔截或轉(zhuǎn)發(fā)請求?

    selenium.chrome怎么寫擴展攔截或轉(zhuǎn)發(fā)請求?

    Selenium WebDriver 是一組開源 API,用于自動測試 Web 應(yīng)用程序,利用它可以通過代碼來控制chrome瀏覽器! 有時候我們需要mock接口的返回,或者攔截和轉(zhuǎn)發(fā)請求,今天就來實現(xiàn)這個功能。 代碼已開源: https://github.com/yuzd/OpenQA.Selenium.Chrome.Fiddler nuget OpenQA.Selenium.Chrome.Fiddler 開始co

    2024年02月09日
    瀏覽(19)
  • Python selenium無界面headless

    視頻版教程:一天掌握python爬蟲【基礎(chǔ)篇】 涵蓋 requests、beautifulsoup、selenium Chrome-headless 模式, Google 針對 Chrome 瀏覽器 59版 新增加的一種模式,可以讓你不打開UI界面的情況下使用 Chrome 瀏覽器,所以運行效果與 Chrome 保持完美一致,因此速度快與要打開界面的selenium,其使用

    2024年02月05日
    瀏覽(17)
  • 解決selenium使用webdriver.Chrome()報錯的問題

    解決selenium使用webdriver.Chrome()報錯的問題

    谷歌驅(qū)動下載地址: https://sites.google.com/a/chromium.org/chromedriver/home ? 運行成功(打開瀏覽器顯示chrome正在受自動化軟件測試的控制就代表成功): ?找到def __init__(self, executable_path=\\\"chromedriver\\\", port=0, 修改executable_path=\\\"chromedriver\\\" 為executable_path=\\\"chromedriver驅(qū)動的路徑\\\" ? 修改成功后

    2024年02月11日
    瀏覽(33)
  • 解決selenium打開Chrome瀏覽器自動退出的問題

    解決selenium打開Chrome瀏覽器自動退出的問題

    好不容易安裝好selenium和對應(yīng)的瀏覽器驅(qū)動器后終于可以運行程序了,結(jié)果發(fā)現(xiàn)一運行程序后瀏覽器打開就自動退出了,但是我在Python代碼中并沒有寫driver.quit()方法,上網(wǎng)查了查發(fā)現(xiàn)原來是我的selenium版本是4.8.2的,selenium升級到版本4.7.2后,會出現(xiàn)這個瀏覽器自動退出的問題

    2024年02月11日
    瀏覽(104)
  • 解決 Docker + selenium + chromedriver + chrome 會出現(xiàn)僵尸進程的問題

    解決 Docker + selenium + chromedriver + chrome 會出現(xiàn)僵尸進程的問題

    在docker里,使用selenium爬蟲,? webdriver quit 后,會產(chǎn)生很多僵尸進程。 docker run? - it? - v / home / blackip :/ home / blackips / ?? selenium : 1.0 ? python3 linux_black_ip . py top 查看僵尸進程: ps -ef | grep defunct 查看僵尸進程: 僵尸進程的父進程是python3。 看了下chrome運行時的狀況,發(fā)現(xiàn)開始

    2023年04月24日
    瀏覽(26)
  • 【Selenium】chromedriver新版本與Chrome自動更新版本不匹配問題

    【Selenium】chromedriver新版本與Chrome自動更新版本不匹配問題

    python代碼運行出現(xiàn)如下錯誤:This version of ChromeDriver only supports Chrome version 114 Current browser version is 116.0.5845.141 with binary path C:Program FilesGoogleChromeApplicationchrome.exe 解決方案: 1.查看當(dāng)前Google瀏覽器版本:版本 116.0.5845.141(正式版本) (64 位) 2.下載對應(yīng)的瀏覽器驅(qū)動chromed

    2024年02月08日
    瀏覽(25)
  • 【Selenium】chromedriver最新版本與Chrome自動更新版本不匹配問題

    【Selenium】chromedriver最新版本與Chrome自動更新版本不匹配問題

    使用Selenium時需要下載chromedriver 1、首先查看我的Chrome瀏覽器版本已自動更新到116: 2、查找與之對應(yīng)的chromedriver版本:http://chromedriver.storage.googleapis.com/index.html 發(fā)現(xiàn)最新版本只到114: chromedriver與Chrome版本不匹配且沒有匹配最新Chrome版本的chromedriver。 因此考慮降級Chrome版本且

    2024年02月16日
    瀏覽(22)
  • python selenium playwright庫使用教程 破解網(wǎng)頁防止開發(fā)者模式 截取數(shù)據(jù)請求
隱藏chrome

    python selenium playwright庫使用教程 破解網(wǎng)頁防止開發(fā)者模式 截取數(shù)據(jù)請求 隱藏chrome

    下載 chromedriver的版本一定要與Chrome的版本一致,不然就不起作用。 有兩個下載地址: 1、 http://chromedriver.storage.googleapis.com/index.html 2、 CNPM Binaries Mirror 當(dāng)然,你首先需要查看你的Chrome版本,在瀏覽器中輸入chrome://version/ ?放chromedriver在chrome安裝目錄 ?默認目錄一般為:C:Pro

    2023年04月25日
    瀏覽(27)
  • Python之selenium關(guān)于Chrome驅(qū)動位置,閃退的問題和安裝路徑

    Python之selenium關(guān)于Chrome驅(qū)動位置,閃退的問題和安裝路徑

    零、查看Python的安裝路徑 一、Chromedriver放置的位置 二、瀏覽器閃退 ? 背景:之前由于Chrome瀏覽器自動升級后,導(dǎo)致驅(qū)動與瀏覽器不匹配,自己也不知道問題出在哪兒,花費了我大量時間去排查,所以接下來記錄一些。 使用的是selenium v 4.1.0版本 下載的Chromedriver要與瀏覽器的

    2024年02月05日
    瀏覽(93)
  • linux centos安裝google chrome瀏覽器使用headless無頭模式 制作docker鏡像

    chromedriver 驅(qū)動下載地址: https://npm.taobao.org/mirrors/chromedriver/ linux centos安裝google chrome瀏覽器使用headless無頭模式 用java開發(fā)爬蟲,或者需要java操作控制瀏覽器來渲染頁面,抓取頁面元素,都需要在linux安裝google chrome瀏覽器,然后就可以通過chrome driver來連接操作chrome瀏覽器了,

    2024年02月09日
    瀏覽(107)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包