Si ya iniciamos sesión en Salesforce en un navegador y el nombre de usuario, la contraseña está guardada, ¿hay alguna forma de mantener la misma para que cuando intentemos iniciar sesión a través del script de Selenium, no se solicite el código de verificación?
Si uso el siguiente código, me pide un código de verificación:
browserdriver.get("https://slim4shady-dev-ed.my.salesforce.com"); browserdriver.manage().timeouts().implicitlyWait(Duration.ofSeconds(20)); browserdriver.findElement(By.id("username")).sendKeys("xxxxxxx@gmail.com"); browserdriver.findElement(By.id("password")).sendKeys("xxxxxxx"); browserdriver.findElement(By.id("Login")).click();Básicamente, estoy buscando una solución con el script de selenio que usa la información de la sesión iniciada anteriormente o algo así para que no se solicite el código de verificación y que inicie sesión directamente en Salesforce.
Tenga en cuenta que estoy tratando de no agregar la IP como de confianza y usar las capacidades del navegador (no estoy seguro de si este es el término).
Si pueden ayudarme con la solución para cualquiera de los navegadores (Chrome preferiblemente), sería genial.
La mayoría de los sitios web rastrean a los clientes que han iniciado sesión asignando cookies a sus navegadores. Selenium ofrece la opción de generar cookies asignadas por el cliente para que se carguen más tarde en otra sesión del navegador.
def export_cookies(driver): with open("cookies.txt", "w") as fd: fd.write(str(driver.get_cookies())) def import_cookies(driver): with open("cookies.txt", "r") as fd: for cookie in eval(fd.read()): driver.add_cookie(cookie)Exporte las cookies de una sesión válida que esté iniciada y completamente verificada con el código, y luego impórtelas mientras ejecuta sus intentos posteriores antes de cargar la página. Para la mayoría de los sitios web, al cargar la página, el cliente enviará cualquier cookie que tenga en su almacenamiento, y luego el servidor reconocerá instantáneamente la sesión y el cliente cargará la página de inicio de sesión en el navegador como de costumbre.
Solo asegúrese de exportar las cookies desde una ventana completamente verificada, luego cárguelas antes de ingresar al sitio web en una sesión separada. No cambie ninguna otra variable, como la IP del cliente, el agente de usuario, el controlador, etc.