Черех xpath к ::before и ::after нет возможности обратиться. Можно через js, на stackoverflow можно найти пример.
Но там обычно просто текст, тогда можно так
//div/blockquote[contains(@data-quote, "Privet") and text()='ТЕКСТ']
или
//div/blockquote[contains(@data-quote, "Privet") and contains(text(), 'ТЕКСТ')]
Если надо проверить чекбокс, стоит галка или нет, то надо проверять input:checked
Здравствуйте! Cпасибо огромное за ответ, а то я уже голову сломал).Дело в том, что некоторые недобросовестные люди в силу недостатка знаний в этой области дают неверные советы-решения, так на ютубе мне человек написал: В CSS создать/найти псевдоэлемент ::before можно запросом типа "div blockquote[data-quote='Privet']::before". Сам же я вычитал, что псевдоэлементы это элементы, которые не существуют в html разметке, на то они и псевдо. Подскажите пожалуйста, а могу ли я, как-то искать элемент где содержится просто текст, без каких либо атрибутов? Есть тег в нем содержится другой тег, после закрытия которого идет просто текст в ковычках, <div class="bbW"><blockquote всякие атрибуты></blockquote>"Текст"</div>. Но мне нужно искать этот элемент не по определенному тексту, т.е. он может быть каким угодно. Возможно ли какую-то маску указать типа *, [contains(text()="*"], или как-то можно вычесть из родительского тега <div дочерний <blockquote и как раз останется требуемый мне элемент "текст", как правильно сделать такую запись //div[@class="bbW"][not(/blockquote)] ? Подскажите пожалуйста,если знаете, просто сейчас мне приходится брать тег //div вместе с содержимым тега //blockquote, и далее уже распарсивать этот текст, а это лишнее время на выполнение, много лишних действий.