Hi

set dynamic user-data-dir using selenium C#

 set dynamic user-data-dir

generate a temporary folder at runtime and pass it to Chrome.


using OpenQA.Selenium;

using OpenQA.Selenium.Chrome;

using System;

using System.IO;


class Program

{

  static void Main()

  {

    // Generate a unique temp directory for user data

    string tempProfileDir = Path.Combine(Path.GetTempPath(), "ChromeProfile_" + Guid.NewGuid().ToString());

    Directory.CreateDirectory(tempProfileDir);


    var options = new ChromeOptions();


    // Set user-data-dir dynamically

    options.AddArguments($"--user-data-dir={tempProfileDir}");


    // OPTIONAL: other options

    options.AddArguments("--start-maximized");

    options.AddArguments("--disable-extensions");

     

    IWebDriver driver = new ChromeDriver(options);


    driver.Navigate().GoToUrl("https://www.example.com");


    // Your automation code here...


    // Example wait

    System.Threading.Thread.Sleep(5000);


    // Quit driver

    driver.Quit();


    // Cleanup: Delete temp profile folder

    try

    {

      Directory.Delete(tempProfileDir, true);

    }

    catch (Exception ex)

    {

      Console.WriteLine("Failed to delete temp profile: " + ex.Message);

    }

  }

}


Latest
Previous
Next Post »