Update settings for IsEnableScreenshot for web driver
This commit is contained in:
parent
47d728b68a
commit
9b6cf7a9ac
|
|
@ -6,4 +6,5 @@ public class WebBrowsingSettings
|
|||
public bool Headless { get; set; }
|
||||
// Default timeout in milliseconds
|
||||
public float DefaultTimeout { get; set; } = 30000;
|
||||
public bool IsEnableScreenshot { get; set; }
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,3 +1,5 @@
|
|||
using BotSharp.Abstraction.Browsing.Settings;
|
||||
|
||||
namespace BotSharp.Plugin.WebDriver.Drivers.PlaywrightDriver;
|
||||
|
||||
public partial class PlaywrightWebDriver
|
||||
|
|
@ -5,19 +7,21 @@ public partial class PlaywrightWebDriver
|
|||
public async Task<BrowserActionResult> ScreenshotAsync(MessageInfo message, string path)
|
||||
{
|
||||
var result = new BrowserActionResult();
|
||||
|
||||
await _instance.Wait(message.ContextId, waitNetworkIdle: false);
|
||||
var page = _instance.GetPage(message.ContextId);
|
||||
|
||||
await Task.Delay(300);
|
||||
var bytes = await page.ScreenshotAsync(new PageScreenshotOptions
|
||||
var _webDriver = _services.GetRequiredService<WebBrowsingSettings>();
|
||||
if (_webDriver.IsEnableScreenshot)
|
||||
{
|
||||
Path = path,
|
||||
FullPage = true
|
||||
});
|
||||
await _instance.Wait(message.ContextId, waitNetworkIdle: false);
|
||||
var page = _instance.GetPage(message.ContextId);
|
||||
|
||||
await Task.Delay(300);
|
||||
var bytes = await page.ScreenshotAsync(new PageScreenshotOptions
|
||||
{
|
||||
Path = path,
|
||||
FullPage = true
|
||||
});
|
||||
result.Body = "data:image/png;base64," + Convert.ToBase64String(bytes);
|
||||
}
|
||||
result.IsSuccess = true;
|
||||
result.Body = "data:image/png;base64," + Convert.ToBase64String(bytes);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue