第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用Selenium Webdriver捕獲特定元素而不是整個頁面的屏幕截圖?

如何使用Selenium Webdriver捕獲特定元素而不是整個頁面的屏幕截圖?

元芳怎么了 2019-09-20 14:50:25
目前我正在嘗試使用Selenium WebDriver捕獲屏幕截圖。但我只能獲得整頁屏幕截圖。但是,我想要的只是捕獲頁面的一部分,或者只是基于ID或任何特定元素定位器捕獲特定元素。(例如,我希望用圖像id =“Butterfly”捕獲圖片)有沒有辦法按選定的項目或元素捕獲屏幕截圖?
查看完整描述

3 回答

?
收到一只叮咚

TA貢獻1821條經(jīng)驗 獲得超5個贊

在Node.js,我編寫了以下代碼,但它不是基于selenium的官方WebDriverJS,而是基于SauceLabs's WebDriver:WD.js和一個非常緊湊的圖像庫,名為EasyImage。


我只想強調(diào)你不能真正拍攝元素的截圖,但你應(yīng)該做的是首先,截取整個頁面的截圖,然后選擇你喜歡的頁面部分并裁剪特定部分:


browser.get(URL_TO_VISIT)

       .waitForElementById(dependentElementId, webdriver.asserters.isDisplayed, 3000)

       .elementById(elementID)

        .getSize().then(function(size) {

            browser.elementById(elementID)

                   .getLocation().then(function(location) {

                        browser.takeScreenshot().then(function(data) {

                            var base64Data = data.replace(/^data:image\/png;base64,/, "");

                            fs.writeFile(filePath, base64Data, 'base64', function(err) {

                                if (err) {

                                    console.log(err);

                                } 

                                else {

                                    cropInFile(size, location, filePath);

                                }

                                doneCallback();

                        });

                    });

                });

            }); 

而cropInFileFunction就是這樣的:


var cropInFile = function(size, location, srcFile) {

    easyimg.crop({

            src: srcFile,

            dst: srcFile,

            cropwidth: size.width,

            cropheight: size.height,

            x: location.x,

            y: location.y,

            gravity: 'North-West'

        },

        function(err, stdout, stderr) {

            if (err) throw err;

        });

};


查看完整回答
反對 回復(fù) 2019-09-20
  • 3 回答
  • 0 關(guān)注
  • 1109 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號