php - 未知错误: cannot create temp dir for user data dir in Laravel with Symfony Panther

标签 php laravel windows selenium-webdriver symfony-panther

我在Laravel框架中使用Symfony Panther。使用此工具时出现错误

unknown error: cannot create temp dir for user data dir {"exception":"[object] (Facebook\WebDriver\Exception\UnknownErrorException(code: 0):



我已经为Windows 7.4.2安装了XAMPP。

PHP:7.4.2,Apache:2.4.41

composer.json
"require": {
        "php": "^7.1.3",
        "fabpot/goutte": "^3.2",
        "fideloper/proxy": "^4.0",
        "guzzlehttp/guzzle": "~6.0",
        "laravel/framework": "5.7.*",
        "laravel/tinker": "^1.0",
        "symfony/css-selector": "^4.4",
        "symfony/http-client": "^4.4",
        "symfony/panther": "^0.7.0"
    }

Laravel Controller 类
namespace App\Http\Controllers;

include (base_path() .'/vendor/autoload.php');
use Illuminate\Http\Request;
use Symfony\Component\DomCrawler\Crawler;

use Symfony\Component\BrowserKit\HttpBrowser;
use Symfony\Component\HttpClient\HttpClient;

class PageController extends Controller
{
    public function myFunction(Request $request)
    {
        $client = \Symfony\Component\Panther\Client::createChromeClient();

        $client->request('GET', 'https://api-platform.com'); // Yes, this website is 100% written in JavaScript
        $client->clickLink('Support');

        // Wait for an element to be rendered
        $crawler = $client->waitFor('.support');

        echo $crawler->filter('.support')->text();
    }
}

[2020-02-27 16:12:21] local.ERROR: unknown error: cannot create temp dir for user data dir {"exception":"[object] (Facebook\WebDriver\Exception\UnknownErrorException(code: 0): unknown error: cannot create temp dir for user data dir at D:\WWW\PHP\myproject\vendor\php-webdriver\webdriver\lib\Exception\WebDriverException.php:139)

最佳答案

  • 检查磁盘空间是否不足。
  • XAMPP是否具有正确的权限?可能需要以提升的权限运行。
  • 检查%TEMP%%TMP%环境变量并确保它们存在。 (为此,请在Windows的命令行上运行echo %TEMP%echo %TMP%)

  • Related: "cannot create temp dir for user data dir" error when not running as admin

    关于php - 未知错误: cannot create temp dir for user data dir in Laravel with Symfony Panther,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60439567/

    相关文章:

    php - Laravel 5.0 Session 不能使用静态方法

    windows - xampp 中的 apache 无法打开 - 在它之前工作之后

    php变量不存储

    PHP 定义 var = 一个或另一个(又名 : $var=($a||$b);)

    php - PHP解析/语法错误;以及如何解决它们

    laravel - Laravel 5.3 中的 ESI 标签

    javascript - 获取ul下拉值

    mysql - Laravel 数据库,我应该使用什么数据类型来存储 ID 数组?

    c++ - 何时使用 DLL_PROCESS_VERIFIER 标志调用 DllMain?

    java - 如何从根目录加载属性文件?