J'essaye de configurer un environnement pour exécuter du sélénium avec C# dans Ubuntu. J'utilise Visual Studio Code comme IDE. Tout le reste est configuré mais je reçois constamment des erreurs.Exécuter le pilote web Selenium avec C# dans Ubuntu 16.04
Voici mon code:
using System;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
namespace c_sharp
{
class Program
{
static void Main(string[] args)
{
IWebDriver driver = new ChromeDriver();
driver.Url = "http://quotes.toscrape.com/";
}
}
}
Voici le message d'erreur complet que je reçois:
/home/sagunsh/c-sharp/c-sharp.csproj : warning NU1701: Package
'Selenium.WebDriver 3.5.2' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETCoreApp,Version=v2.0'. This package may not be fully compatible with your project.
/home/sagunsh/c-sharp/c-sharp.csproj : warning NU1701: Package 'Selenium.WebDriver 3.5.2' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETCoreApp,Version=v2.0'. This package may not be fully compatible with your project.
Starting ChromeDriver 2.31.488763 (092de99f48a300323ecf8c2a4e2e7cab51de5ba8) on port 51621
Only local connections are allowed.
Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'System.Security.Permissions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'. The system cannot find the file specified.
at Newtonsoft.Json.Serialization.JsonTypeReflector.get_DynamicCodeGeneration()
at Newtonsoft.Json.Serialization.JsonTypeReflector.get_ReflectionDelegateFactory()
at Newtonsoft.Json.Serialization.DefaultContractResolver.GetDefaultCreator(Type createdType)
at Newtonsoft.Json.Serialization.DefaultContractResolver.InitializeContract(JsonContract contract)
at Newtonsoft.Json.Serialization.DefaultContractResolver.CreateDictionaryContract(Type objectType)
at Newtonsoft.Json.Serialization.DefaultContractResolver.ResolveContract(Type type)
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize(JsonWriter jsonWriter, Object value, Type objectType)
at Newtonsoft.Json.JsonSerializer.SerializeInternal(JsonWriter jsonWriter, Object value, Type objectType)
at Newtonsoft.Json.JsonConvert.SerializeObjectInternal(Object value, Type type, JsonSerializer jsonSerializer)
at OpenQA.Selenium.Remote.Command.get_ParametersAsJsonString()
at OpenQA.Selenium.Remote.HttpCommandExecutor.Execute(Command commandToExecute)
at OpenQA.Selenium.Remote.DriverServiceCommandExecutor.Execute(Command commandToExecute)
at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
at OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredCapabilities)
at OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor, ICapabilities desiredCapabilities)
at c_sharp.Program.Main(String[] args) in /home/sagunsh/c-sharp/Program.cs:line 11
J'ai perdu les 12 dernières heures pour savoir où est-ce que je me trompe. Je suis un développeur python mais pour une raison quelconque, j'ai besoin d'utiliser C# maintenant et je suis complètement nouveau. Toute aide serait très appréciée.
sont u définir le chemin du chromedriver – iamsankalp89
oui le chemin est défini, toutes les autres choses vont bien puisque je fais beaucoup de sélénium avec python aussi. –
Webdriver.dll est manquant Je devine – iamsankalp89