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

pyinstaller打包selenium后彈出webdriver命令行窗口的解決方法

這篇具有很好參考價(jià)值的文章主要介紹了pyinstaller打包selenium后彈出webdriver命令行窗口的解決方法。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

最近在使用tkinter來開發(fā)一個(gè)GUI程序,用到了selenium的headless模式。代碼調(diào)試妥當(dāng),準(zhǔn)備用pyinstaller打包成exe文件,卻發(fā)現(xiàn)在pycharm里面一切正常,打包后會(huì)彈出一個(gè)黑框,影響體驗(yàn):

pyinstaller打包selenium后彈出webdriver命令行窗口的解決方法

有的同學(xué)還會(huì)有類似以下日志

DevTools listening on ws://127.0.0.1:12345...........

搜索一番之后大概發(fā)現(xiàn)了網(wǎng)上說的2種方案

  1. pyinstaller?使用?--windowed參數(shù)
  2. 修改.../Lib/sit-packages/selenium/webdriver/common/service.py的源碼,將76行的creationflags改為一個(gè)神秘?cái)?shù)字134217728(其實(shí)就是0x8000000)

長話短說,我本來就已經(jīng)使用了-w參數(shù)編譯,所以方法1不是我遇到的問題的原因,方法2才是。但是這么寫比較粗魯,更好的方法應(yīng)該是寫一個(gè)子類繼承Service類(無奈selenium官方不提供修改該參數(shù)的公有方法)。

原來的寫法(會(huì)彈窗)

from selenium.webdriver import ChromeOptions, Chrome
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager


def initial_driver():
    my_options = ChromeOptions()
    my_options.add_argument('--headless')
    my_options.add_experimental_option('excludeSwitches', ['enable-logging'])
    return Chrome(options=my_options, service=Service(ChromeDriverManager().install()))

改為這樣(不彈窗):

from selenium.webdriver import ChromeOptions, Chrome
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager


class MyService(Service):
    def __init__(self, executable_path: str,
                 port: int = 0, service_args=None,
                 log_path: str = None, env: dict = None):
        super(Service, self).__init__(
            executable_path,
            port,
            service_args,
            log_path,
            env,
            "Please see https://chromedriver.chromium.org/home")
        self.creationflags = 0x8000000


def initial_driver():
    my_options = ChromeOptions()
    my_options.add_argument('--headless')
    my_options.add_experimental_option('excludeSwitches', ['enable-logging'])
    return Chrome(options=my_options, service=MyService(ChromeDriverManager().install()))

其中,下面這句的作用就是關(guān)閉“DevTools listening on ws://127.0.0.1:12345...........”的日志輸出文章來源地址http://www.zghlxwxcb.cn/news/detail-502839.html

my_options.add_experimental_option('excludeSwitches', ['enable-logging'])

到了這里,關(guān)于pyinstaller打包selenium后彈出webdriver命令行窗口的解決方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • Python ---- pyInstaller 的常用打包命令

    1. 簡介 PyInstaller是一個(gè)第三方庫,它能夠在Windows、Linux、 Mac OS X 等操作系統(tǒng)下將 Python 源文件打包,通過對(duì)源文件打包, Python 程序可以在沒有安裝 Python 的環(huán)境中運(yùn)行,也可以作為一個(gè) 獨(dú)立文件方便傳遞和管理。 PyInstaller支持Python 2.7和Python 3.3+??梢栽赪indows、Mac OS X和Linu

    2024年02月14日
    瀏覽(24)
  • 解決edge關(guān)閉更新后彈出“無法更新”提示的問題

    解決edge關(guān)閉更新后彈出“無法更新”提示的問題

    利用諸多教程關(guān)閉edge更新后,每次打開edge的第一個(gè)窗口都會(huì)彈出如下圖提示,若是此時(shí)正在輸入或按下回車則會(huì)被此窗口逼瘋······ 解決方法并不困難卻少有教程,本文作為初步總結(jié)與補(bǔ)充,參考網(wǎng)址: [1]?https://zhuanlan.zhihu.com/p/481696765? [2]?https://www.bilibili.com/read/cv117

    2024年02月04日
    瀏覽(31)
  • 解決pyinstaller -w打包selenium和pyqt5出現(xiàn)的黑色飛窗

    解決pyinstaller -w打包selenium和pyqt5出現(xiàn)的黑色飛窗

    使用 pyinstaller -F -w main.py 命令可以將selenium和pyqt5打包成一個(gè) 僅有窗口無控制臺(tái) 的可執(zhí)行文件,但在執(zhí)行exe文件之后,只要程序執(zhí)行到selenium模塊的地方,會(huì)出現(xiàn)一個(gè) 黑色控制臺(tái)窗口,或一閃而過 ,非常影響美觀和使用。 找到selenium庫中的 service.py 或 selenium_manager.py (低版本

    2024年02月04日
    瀏覽(26)
  • Pyinstaller 打包 django 項(xiàng)目如何將命令行參數(shù)加入?

    Pyinstaller 打包 django 項(xiàng)目如何將命令行參數(shù)加入?

    起因 Pyinstaller 打包 django 項(xiàng)目,打包成 manage.exe 后用命令行 cmd manage.exe runserver 0.0.0.0:8001 --noreload 來運(yùn)行感覺很不方便。 希望能夠直接把命令行參數(shù)也打包進(jìn)去,直接運(yùn)行 exe 。我走了些彎路,但最終實(shí)現(xiàn)了。 我看到有人說 新建一個(gè) main.py 在里面用 os.system : 看起來可行,在

    2024年02月13日
    瀏覽(17)
  • Putty連接服務(wù)器后彈出Network error: Software caused connection abort

    Putty連接服務(wù)器后彈出Network error: Software caused connection abort

    天行健,君子以自強(qiáng)不息;地勢(shì)坤,君子以厚德載物。 每個(gè)人都有惰性,但不斷學(xué)習(xí)是好好生活的根本,共勉! 文章均為學(xué)習(xí)整理筆記,分享記錄為主,如有錯(cuò)誤請(qǐng)指正,共同學(xué)習(xí)進(jìn)步。 在使用putty連接服務(wù)器時(shí),連接成功后過一會(huì)彈出如下錯(cuò)誤 字面意思大概是 網(wǎng)絡(luò)錯(cuò)誤:

    2024年02月05日
    瀏覽(19)
  • python selenium 運(yùn)行driver時(shí)一直彈出控制臺(tái)CMD窗口怎么辦

    python selenium 運(yùn)行driver時(shí)一直彈出控制臺(tái)CMD窗口怎么辦

    1.python selenium 運(yùn)行driver時(shí)一直彈出控制臺(tái)CMD窗口,且不斷報(bào)以下錯(cuò)誤應(yīng)該怎么處理? DevTools listening on ws://127.0.0.1:51303/devtools/browser/6d5f8d32-1e30-4749-ad54-17f08ee3a983 真的非常影響心情?。。。? 2.一直在網(wǎng)上搜索,按照大家所說的用以下代碼還是不行: options = webdriver.ChromeOptions(

    2024年02月11日
    瀏覽(88)
  • 基于華為商城的搶單工具python3.9的selenium webdriver使用及打包

    基于華為商城的搶單工具python3.9的selenium webdriver使用及打包

    本文基于華為商城的搶單工具,講解一下python3.9的selenium webdriver使用,網(wǎng)上也有相關(guān)的資料,但在自己動(dòng)手做的過程中還是遇到了一些波折,想拿出來跟大家一起分享。開篇先放個(gè)圖: 主要從三個(gè)大方面說明:開發(fā)環(huán)境搭建、工程打包、過程中所遇問題整理 話不多說,從頭

    2024年04月09日
    瀏覽(21)
  • 在訪問一個(gè)網(wǎng)頁時(shí)彈出的瀏覽器窗口,如何用selenium 網(wǎng)頁自動(dòng)化解決?

    在訪問一個(gè)網(wǎng)頁時(shí)彈出的瀏覽器窗口,如何用selenium 網(wǎng)頁自動(dòng)化解決?

    相信大家在使用selenium做網(wǎng)頁自動(dòng)化時(shí),會(huì)遇到如下這樣的一個(gè)場景: 在你使用get訪問某一個(gè)網(wǎng)址時(shí),會(huì)在頁面中彈出如上圖所示的彈出框。 首先想到是利用Alert類來處理它。 然而,很不幸,Alert類處理的結(jié)果就是沒有結(jié)果,并不能夠?qū)⑦@個(gè)彈出框關(guān)閉掉。 無法用處理alert的

    2024年02月10日
    瀏覽(27)
  • selenium 網(wǎng)頁自動(dòng)化-在訪問一個(gè)網(wǎng)頁時(shí)彈出的瀏覽器窗口,我該如何處理?

    selenium 網(wǎng)頁自動(dòng)化-在訪問一個(gè)網(wǎng)頁時(shí)彈出的瀏覽器窗口,我該如何處理?

    相信大家在使用selenium做網(wǎng)頁自動(dòng)化時(shí),會(huì)遇到如下這樣的一個(gè)場景: 在你使用get訪問某一個(gè)網(wǎng)址時(shí),會(huì)在頁面中彈出如上圖所示的彈出框。 首先想到是利用Alert類來處理它。 然而,很不幸,Alert類處理的結(jié)果就是沒有結(jié)果,并不能夠?qū)⑦@個(gè)彈出框關(guān)閉掉。 無法用處理alert的

    2024年02月07日
    瀏覽(26)
  • VSCode使用background-cover插件后彈出“code安裝似乎損壞,請(qǐng)重新安裝“,有時(shí)頂部顯示“不受支持“--解決方法

    VSCode使用background-cover插件后彈出“code安裝似乎損壞,請(qǐng)重新安裝“,有時(shí)頂部顯示“不受支持“--解決方法

    最近在使用vscode的時(shí)候發(fā)現(xiàn)有時(shí)候右下角會(huì)彈出\\\"code安裝似乎損壞,請(qǐng)重新安裝\\\",頂部顯示\\\"不受支持\\\"的問題。 ?經(jīng)過排查,發(fā)現(xiàn)是background-cover這個(gè)插件的問題,原因應(yīng)該是通過這個(gè)插件去給vscode設(shè)置自定義圖片作為背景的時(shí)候修改了vscode本身的配置文件,導(dǎo)致了vscode認(rèn)為安裝

    2024年02月09日
    瀏覽(25)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包