Я использую C# / Селен с ChromeDriver . Я могу отправить ContextClick (не имеет значения, это может быть где-либо на веб-странице) на веб-сайт методом Действие , но я не выбрал пункты меню ( Назад, Печать и т. Д.). c. ). Я перепробовал все ярлыки, но это не сработало.
Непосредственно методы VirtualKeys или SendKeys могут работать очень хорошо, но я хочу использовать ChromeDriver с « - без головы » и « - без звука ».
Я попробовал метод " actions.SendKeys (Keys.ArrowDown) .Build (). Perform (); ", но веб-страница действовала как перемещение страницы (вертикальная полоса прокрутки или PageDown). И снова я попробовал другой метод, когда использую для ContextClick метод, " actions.MoveByOffset (10, 70) .Click (). Perform (); ". Я не мог выбрать параметры ContextMenu с помощью мыши или клавиатуры.
Затем я искал коды меню ContextClick с помощью Xpath , но не смог его найти. Может быть, у него есть коды, но я не смог его найти.
Я делюсь своим примером кода здесь:
ChromeOptions option = new ChromeOptions();
option.AddArgument("--headless");
option.AddArgument("--silent");
ChromeDriverService service = ChromeDriverService.CreateDefaultService();
service.HideCommandPromptWindow = true;
IWebDriver driver = new ChromeDriver(service, option);
driver.Url = "https://mywebsite";
Thread.Sleep(2000);
Actions actions = new Actions(driver);
actions.ContextClick().Perform();
Thread.Sleep(250);
actions.SendKeys(Keys.ArrowDown).Build().Perform();