Selenium: загрузка веб-файлов WhatsApp работает в обычном Chrome, но не работает в безголовом режимеC#

Место общения программистов C#
Ответить
Anonymous
 Selenium: загрузка веб-файлов WhatsApp работает в обычном Chrome, но не работает в безголовом режиме

Сообщение Anonymous »

Я использую Selenium с C# ChromeDriver для автоматизации WhatsApp Web.
Загрузка PDF-файла работает правильно в обычном (видимом) Chrome, но не работает в безголовом режиме.

Работает (без безголового режима)

Код: Выделить всё

var attachInput = driver.FindElement(By.CssSelector("input[type='file'][multiple]"));
attachInput.SendKeys(filePath);
// PDF + message are delivered
Неисправность в безголовом режиме

Случай 1

Код: Выделить всё

var attachInput = driver.FindElement(By.CssSelector("input[type='file'][multiple]"));
// Throws: NoSuchElementException

Случай 2

Код: Выделить всё

var attachInput = driver.FindElement(By.CssSelector("input[type='file']"));
attachInput.SendKeys(filePath);
// No exception, but PDF is never delivered (only text message sends)
Параметры Chrome (без заголовка)

Код: Выделить всё

if (isHeadless)
{
options.AddArgument("--headless=new");
options.AddArgument("--disable-gpu");
options.AddArgument("--window-size=1920,1080");
options.AddArgument(
"user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) " +
"AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
);
}
Шаги
  • Открыть: https://web.whatsapp.com/send?phone=...
  • Нажмите значок вложения (плюс)
  • Нажмите Документ
  • Отправить файл через скрытый
  • Нажмите Отправить
Работает на 100 % в обычном режиме.

Не работает в настоящем безголовом Chrome.

Вопрос
Блокирует ли WhatsApp Web намеренно загрузку файлов в автономных браузерах?

Есть ли какое-либо обходное решение или загрузка файлов просто невозможна в истинном автономном Chrome для WhatsApp Web?

Подробнее здесь: https://stackoverflow.com/questions/798 ... n-headless
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»