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

基于QWebEngine實(shí)現(xiàn)無頭瀏覽器

這篇具有很好參考價值的文章主要介紹了基于QWebEngine實(shí)現(xiàn)無頭瀏覽器。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

無頭瀏覽器

無頭瀏覽器(Headless Browser)是一種沒有圖形用戶界面(GUI)的瀏覽器。它通過在內(nèi)存中渲染頁面,然后將結(jié)果發(fā)送回請求它的用戶或程序來實(shí)現(xiàn)對網(wǎng)頁的訪問,而不會在屏幕上顯示網(wǎng)頁。這種方式使得無頭瀏覽器不僅適用于網(wǎng)絡(luò)爬蟲和測試等自動化任務(wù),而且還能夠更安全地進(jìn)行網(wǎng)頁瀏覽,因?yàn)樗粫谄聊簧巷@示您的活動。

常見的無頭瀏覽器包括Chrome Headless、PhantomJS、Puppeteer等,常見的這些無頭瀏覽器都屬于互聯(lián)網(wǎng)前后端開發(fā)相關(guān)的東西,與Qt技術(shù)棧相關(guān)的比較少。

在之前的文章中我們了解到,QWebEngine能夠?qū)崿F(xiàn)內(nèi)嵌瀏覽器的功能,基于無頭瀏覽器的原理介紹,QWebEngine能不能實(shí)現(xiàn)加載網(wǎng)頁但不顯示頁面呢?

答案是,可以的。

基于QWebEnginePage實(shí)現(xiàn)無頭瀏覽器

在之前的文章中我們有介紹到QWebEngine有兩種實(shí)現(xiàn)方式,一個QWidget框架下的QWebEngineView,另一種是QML框架下的WebEngineView,其中QWebEngineView包含QWebEnginePage的功能,QWebEnginePage提供頁面加載相關(guān)的功能,QWebEngineView用于page的顯示,基于QWebEnginePage就可實(shí)現(xiàn)無頭瀏覽器。

    auto page = new QWebEnginePage(this);
    page->setUrl(QUrl("https://www.qt.io/"));
    connect(page, &QWebEnginePage::loadFinished, this, [=](bool ok){
        qDebug() << __FUNCTION__ << "song" << "load is ok" << ok;
    });

使用QWebEnginePage加載頁面,頁面加載成功后就可以做一些操作,如網(wǎng)絡(luò)截圖、爬蟲、數(shù)據(jù)采集等。

QWebEnginePage支持QWebEngine內(nèi)嵌瀏覽器相關(guān)的功能,具體可查看相關(guān)接口

1、獲取網(wǎng)頁相關(guān)信息

基于QWebEngine實(shí)現(xiàn)無頭瀏覽器,QWebEngine應(yīng)用,無頭瀏覽器,QWebEngine

2、注入javascript

基于QWebEngine實(shí)現(xiàn)無頭瀏覽器,QWebEngine應(yīng)用,無頭瀏覽器,QWebEngine

3、打印pdf

基于QWebEngine實(shí)現(xiàn)無頭瀏覽器,QWebEngine應(yīng)用,無頭瀏覽器,QWebEngine

更具體的應(yīng)用需要自己去發(fā)掘了。

QML的WebEngineView沒有像QWebEngineView把page的功能分開,所以WebEngineView不能實(shí)現(xiàn)無頭瀏覽器的效果。

最后,需要注意的是,如果是在控制臺程序中運(yùn)行QWebEnginePage,main函數(shù)的應(yīng)用程序類型必須是QApplication,使用QCoreApplication無法啟動QWebEnginePage。文章來源地址http://www.zghlxwxcb.cn/news/detail-705176.html

到了這里,關(guān)于基于QWebEngine實(shí)現(xiàn)無頭瀏覽器的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • selenium無頭瀏覽器

    無頭瀏覽器,也是通過selenium操作瀏覽器,但是瀏覽器不彈出來的意思 需要用到這個:

    2024年02月11日
    瀏覽(83)
  • Selenium:設(shè)置無頭瀏覽器

    在使用selenium執(zhí)行測試用例時,每條用例執(zhí)行過程中都會打開一個瀏覽器,如果用例數(shù)量過多時,每次運(yùn)行均需要調(diào)用一次瀏覽器,增加了服務(wù)器壓力,而無頭模式就可以解決這種問題,他可以讓運(yùn)行速度更快,占用的資源也更少,讓瀏覽器偷偷的在后臺工作。 無頭模式,是

    2024年02月16日
    瀏覽(94)
  • 無頭瀏覽器puppeteer自動調(diào)用Dapp交易

    自動化調(diào)用dapp的方法一種是直接調(diào)用合約的方法進(jìn)行交易,另一種是用無頭瀏覽器通過操作dapp頁面進(jìn)行自動化交易。用到了puppeteer和@chainsafe/dappeteer兩個庫; puppeteer:無頭瀏覽器 @chainsafe/dappeteer: 是封裝好的在無頭瀏覽器操作MataMask插件的庫 以下是示例代碼

    2024年02月17日
    瀏覽(28)
  • Python + Playwright 無頭瀏覽器Chrome找不到元素

    用Python + Playwright調(diào)試時,發(fā)現(xiàn)不用無頭瀏覽器(即 headless=False )代碼能夠運(yùn)行成功,但是一用無頭瀏覽器時(即 headless=True )就會報錯,提示找不到元素。換成Firefox瀏覽器又不會有這個問題,有可能是因?yàn)榫W(wǎng)站有一個前段反爬蟲手段。(同理,如果大家使用 playwright codege

    2024年02月16日
    瀏覽(20)
  • Python Headless Chrome(無頭谷歌瀏覽器)

    Python Headless Chrome(無頭谷歌瀏覽器)

    在我們使用Selenium驅(qū)動ChromeDriver時,可以彈出谷歌瀏覽器,模擬人為操作谷歌瀏覽器,這就是自動化測試。雖然很厲害,但是也有一個很現(xiàn)實(shí)的問題,因?yàn)槭且鎸?shí)加載完整網(wǎng)頁,導(dǎo)致效率低。在自動化測試時,我們其實(shí)只需要知道是測試完成還是未完成,至于能否看到完整

    2024年02月05日
    瀏覽(20)
  • selenium基本使用、無頭瀏覽器(chrome、FireFox)、搜索標(biāo)簽

    這個模塊:既能發(fā)請求,又能解析,還能執(zhí)行js selenium最初是一個自動化測試工具,而爬蟲中使用它主要是為了解決requests無法直接執(zhí)行 JavaScript代碼的問題 selenium 會做web方向的自動化測試 appnium 會做 app方向的自動化測試 selenium 可以操作瀏覽器,模擬人的 行為 下載瀏覽器驅(qū)動

    2024年02月04日
    瀏覽(109)
  • Selenium Edge的無頭瀏覽器模式以及反WebDriver檢測

    Selenium Edge的無頭瀏覽器模式以及反WebDriver檢測

    ? ? ? ? 由于本人只使用Edge瀏覽器,所以在得知Selenium對PantomJS的支持取消后,在網(wǎng)上找了各種關(guān)于Edge瀏覽器的資料。配置Selenium Edge有多種方法,但這里只介紹一種方法。 MSEdgeDriver下載地址 ?此處需要注意將瀏覽器更新到最新版本,以及選擇正確的下載通道 解壓下載的壓縮

    2023年04月09日
    瀏覽(90)
  • Selenium 無頭瀏覽器被知乎限制訪問的解決方案

    Selenium 無頭瀏覽器被知乎限制訪問的解決方案

    我嘗試使用如下代碼爬取知乎的有關(guān)內(nèi)容,出現(xiàn)知乎安全驗(yàn)證界面: 添加啟動參數(shù) 在網(wǎng)上的許多文章中,反復(fù)提到了如下三行代碼,然而我將他們加入代碼后沒有什么效果: JavaScript特殊全局變量 有一些文章提到,通過 WebDriver 啟動的網(wǎng)頁會存在一些特殊的 JS 變量,這些變

    2024年02月14日
    瀏覽(90)
  • 『python爬蟲』24. selenium之無頭瀏覽器-后臺靜默運(yùn)行(保姆級圖文)

    『python爬蟲』24. selenium之無頭瀏覽器-后臺靜默運(yùn)行(保姆級圖文)

    歡迎關(guān)注 『python爬蟲』 專欄,持續(xù)更新中 歡迎關(guān)注 『python爬蟲』 專欄,持續(xù)更新中 一般性的selenium會打開瀏覽器頁面,展示圖形化頁面給我們看,我們都應(yīng)該知道命令行式的程序肯定比這種渲染圖形化界面的程序快速高效。為了一定程度上緩解selenium慢的問題,我們可以采

    2024年02月07日
    瀏覽(371)
  • 針對于selenium的一些常規(guī)配置(防檢測,無頭,保留自己瀏覽器的登錄信息等)

    針對于selenium的一些常規(guī)配置(防檢測,無頭,保留自己瀏覽器的登錄信息等)

    在使用selenium的時候有時候會受到網(wǎng)站的檢測導(dǎo)致我們的程序被迫中止,因此我們需要給selenium添加一些瀏覽器特征來防止被網(wǎng)站檢測到**(1-4為防檢測配置)**. 在給selenium添加參數(shù)的時候,我們可以使用add_argument selenium添加user-agent參數(shù) 去除 “Chrome正受到自動化測試軟件的控制”

    2024年02月12日
    瀏覽(107)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包