Cada vez que trato de usar Titiritero para iniciar sesión en una cuenta de Office, siempre dice "Ingrese una dirección de correo electrónico válida" en el sitio de inicio de sesión (y sé que el correo electrónico es válido, lo he probado). Revisé algunas otras preguntas, y una de ellas mencionó que podrían tener prevenciones de inicio de sesión para Puppeteer, Selenium, etc., aunque no estoy seguro. Puedo iniciar sesión si lo hago manualmente.
Aquí está el código que maneja todo eso:
var email = "myemail@outlook.com" await page.evaluate((em)=>{ document.querySelector(`[type="email"]`).value = em; },email); await page.screenshot({ path:"./email_input.png" }) await page.waitForTimeout(1000); await page.evaluate((em)=>{ var interval = setInterval(() => { if(document.querySelector(`[type="email"]`).value === em){ document.querySelector(`[type="submit"]`).dispatchEvent(new Event('click')); clearInterval(interval); } }); },email); await page.screenshot({ path:"./sign_in_email.png" })edite el comentario de ManuelMB: fue solo una verificación para asegurarse de que el valor era realmente el correo electrónico. Todavía no funciona sin él.