From 6844458f4d7bc8ec3f30d6fad6bfc06d5781fb15 Mon Sep 17 00:00:00 2001 From: Jose Jimenez Date: Wed, 24 Jan 2024 15:33:21 -0800 Subject: [PATCH] Update ExecuteJavascriptMiddleware.php --- src/Downloader/Middleware/ExecuteJavascriptMiddleware.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Downloader/Middleware/ExecuteJavascriptMiddleware.php b/src/Downloader/Middleware/ExecuteJavascriptMiddleware.php index 2bf8fff..aeaf4b8 100644 --- a/src/Downloader/Middleware/ExecuteJavascriptMiddleware.php +++ b/src/Downloader/Middleware/ExecuteJavascriptMiddleware.php @@ -36,7 +36,7 @@ public function __construct( ?callable $getBrowsershot = null, ) { /** @psalm-suppress MixedInferredReturnType, MixedReturnStatement */ - $this->getBrowsershot = $getBrowsershot ?: static fn (string $uri): Browsershot => Browsershot::url($uri)->waitUntilNetworkIdle(); + $this->getBrowsershot = $getBrowsershot ?: static fn (string $uri): Browsershot => Browsershot::url($uri); } public function handleResponse(Response $response): Response @@ -66,6 +66,10 @@ private function configureBrowsershot(string $uri): Browsershot { $browsershot = ($this->getBrowsershot)($uri); + if (null !== ($waitUntilNetworkIdle = $this->option('waitUntilNetworkIdle'))) { + $browsershot->waitUntilNetworkIdle($waitUntilNetworkIdle); + } + if (!empty($this->option('chromiumArguments'))) { $browsershot->addChromiumArguments($this->option('chromiumArguments')); } @@ -108,6 +112,7 @@ private function configureBrowsershot(string $uri): Browsershot private function defaultOptions(): array { return [ + 'waitUntilNetworkIdle' => true, 'chromiumArguments' => [], 'chromePath' => null, 'binPath' => null,