无法无头启动 chrome

Can't start headless chrome

我尝试以编程方式使用 Laravel Dusk。当我尝试以下代码时:

use Symfony\Component\Process\Process;
use Facebook\WebDriver\Chrome\ChromeOptions;
use Facebook\WebDriver\Remote\DesiredCapabilities;
use Facebook\WebDriver\Remote\RemoteWebDriver;

$driver = realpath(base_path() . '/vendor/laravel/dusk/bin/chromedriver-linux');

$process = new Process(
    array_merge([realpath($driver)], []), null, ['DISPLAY' => ':0']
);

$process->start();

$options = (new ChromeOptions)->addArguments([]);
$capabilities = DesiredCapabilities::chrome()->setCapability(
    ChromeOptions::CAPABILITY, $options
);

return RemoteWebDriver::create(
    'http://localhost:9515', $capabilities, 5000, 10000
);

我遇到了这个错误。我尝试将 FacebookWebDriver 用作独立组件并得到相同的结果:

Curl error thrown for http POST to /session with params: 
{"desiredCapabilities": 
{"browserName":"chrome","platform":"ANY","chromeOptions": 
{"binary":""}}} Operation timed out after 10001 milliseconds with 0 bytes received

有问题的端口未被使用。找不到代码有什么问题。

通过将 Selenium Standalone jar 和 chromedriver 放在同一目录中解决了这个问题。请务必在您的路径中包含文件夹目录。可能对其他人有用。