R - Подавить вывод try() на консоль при перехвате выражения Rselenium

Следующий код отправляет вывод на консоль, когда выражение не выполняется, даже если try() аргумент silent = TRUE,

dd = try(unlist(remDr$findElement("css", "#ctl00_mainA")), silent = TRUE)

suppressMessages() не подавляет вывод.

dd = suppressMessages(try(unlist(remDr$findElement("css", "#ctl00_mainA")), silent = TRUE))

try () используется, чтобы перехватить ошибку Selenium message: Unable to locate element: ........, Логика кода работает отлично; скрипт продолжает работать как задумано.

Сообщение не является ошибкой, которая отображается красным цветом. Сообщение в черном; тот же цвет, который получается из print() и cat().

Эхо выключено. Исходный код не выводится на консоль.

Я хочу подавить сообщение, сохранив при этом возможность отправлять сообщения на консоль с помощью print() и cat().

Был бы признателен за любые идеи.

1 ответ

Использовать remDr$findElements()вместо этого с теми же аргументами. Если элемент, который вы ищете, не существует, он просто возвращает нулевую длину list что легко проверить, и вы не получите длинного сообщения об ошибке, выводимого на консоль.

Другие вопросы по тегам