Браузер селена хромедрайвер не открывается после публикации - PullRequest
0 голосов
/ 22 сентября 2018

В моем веб-приложении MVC я использую веб-драйвер selenium C # для чтения некоторых данных из файла HTML.мое приложение работает правильно, когда я запускаю его через VS (открытие HTML-файла через chrome и правильное чтение HTML)Но после публикации и размещения приложения на IIS-сервере HTML-файл не открывается через браузер Chrome.(браузер не открывается), вот мой код.

public class CribController : Controller
{
    public ActionResult Index()
    {
        try
        {

        IWebDriver driver = new ChromeDriver(@"C:\Selenium\");

        driver.Navigate().GoToUrl("D:/Crib/toEdit_Foramted V2.html");
        string text = driver.Title;

        var table = driver.FindElement(By.Id("reportcontainerstyle-Ver2"));
        var rowsss = table.FindElements(By.TagName("tr"));

        //To get days arrears details
        var mainTable = driver.FindElement(By.Name("ConsumerCreditDetails_Version3"));
        var subTables = mainTable.FindElements(By.Id("bandstyle-Ver2"));

            var rows = driver.FindElements(By.XPath("//table[.//td[normalize-space(.)='Credit Facility (CF) Details']][1]/following-sibling::table[1]//tr[not(@type='table-header')]"));

            foreach (IWebElement row in rows)
            {
                //Some logic here
            }
            Thread.Sleep(3000);
            driver.Close();
        }
        catch (Exception ex)
        {
            Logger.LogWriter("WebApplication2.Controllers", ex, "CribController", "Index");
            Console.WriteLine(ex);
        }
        return View();
    }
}

Почему это не работает после публикации.как я могу решить это?

1 Ответ

0 голосов
/ 01 октября 2018

Я думаю, что нам нужно больше контекста об ошибке, которую она вам выдаёт.

Есть похожий вопрос в репозитории Selenium GitHub, и это был ответ https://github.com/seleniumhq/selenium/issues/1125#issuecomment-257258747

Вы можете объявить драйвер следующим образом:

var driverService = ChromeDriverService.CreateDefaultService();
driverService.HideCommandPromptWindow = true;
var options = new ChromeOptions();
options.AddArguments(new List<string> { { "start-maximized" } });
IWebDriver driver;
driver = new ChromeDriver(driverService, options);

Другой способ, который может помочьВ этом же решении попробуйте создать консольное приложение для кода и выполнения Selenium, вызывая его конструктор из контроллера (проекта MVC).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...