InvalidSelectorException - Xpath экранирование - PullRequest
0 голосов
/ 13 сентября 2018

Переменная может встречаться с символами, которые используются в Xpath, соответственно, есть синтаксическая ошибка, как вы можете выиграть?

Пример переменной (это только пример, символы в ней могут отличаться):

string textElementa = "it ' is" 

Поиск элемента по Xpath:

IWebElement elem = diver.FindElement(By.XPath("//div[normalize-space()='" + textElementa + "']"));

HTML-код для:

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
    <div>
        <span>it</span> <span>'</span> <span>is</span>
    </div>
</body>
</html>

Я пробовал все это, но это не такя не работаюhttps://stackoverflow.com/questions/35854525

Я тоже пробовал это:

    public static string ToXPath(string value)
    {
       return "'" + XmlEncode(value) + "'";
    }

    public static string XmlEncode(string value)
    {
       StringBuilder text = new StringBuilder(value);
       text.Replace("&", "&amp;");
       text.Replace("'", "&apos;");
       text.Replace(@"""", "&quot;");
       text.Replace("<", "&lt;");
       text.Replace(">", "&gt;");
       return text.ToString();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...