Saltar a contenido

Automatización Web y perfiles de usuario

El Framework Web de BotCity, por estándar, genera un directorio temporal (que luego se borra) para ser utilizado como directorio de perfil, por lo que con cada ejecución comienza una nueva sesión de limpieza del navegador, asegurando que información como cookies, contraseñas y Los certificados almacenados no interfieren con las ejecuciones.

Sin embargo, en algunos casos, es pertinente utilizar un perfil de usuario existente para aprovechar un sistema ya registrado en un sistema o incluso para reducir el riesgo de ser bloqueado por los sistemas de detección de bots.

Configuración del navegador para usar un perfil específico

De manera predeterminada, los navegadores iniciados a través de la BotCity Web Framework tienen un conjunto de opciones seleccionadas y elegidas como esenciales para las automatizaciones RPA. Sin embargo, es posible que deba personalizar estas opciones, como en este caso, donde definiremos un perfil existente para el navegador.

Definiremos esta configuración a través de la propiedad options navegador y acceder a él a través del default_options. Por lo tanto, es posible definir la ruta del directorio de perfil que desea utilizar al iniciar el navegador con WebBot, pasando esta ruta a la variable user_data_dir.

A continuación, seguirá los pasos para configurar los navegadores Google, Firefox mi MSEdge para utilizar un perfil existente al navegar con WebBot.

Google Chrome

Para comenzar el navegador Chrome con un perfil existente con BotCity's Framework Web es muy simple, solo importe la propiedad default_options en su código, y pase la ruta del perfil de usuario elegido a la variable user_data_dir, Como se muestra en el siguiente extracto:

from botcity.web import WebBot, Browser
from botcity.web.browsers.chrome import default_options

def main():
    # Instancia de Webbot
    bot = WebBot()

    # Configure si desea ejecutar o no en el modo sin headless.
    bot.headless = False

    profile_path = "<your browser profile path>/"

    # Busque las opciones predeterminadas para mi navegador favorito
    # Pasar los parámetros headless y user_data_dir 
    # para ser utilizado al crear el default_options
    def_options = default_options(
        headless=bot.headless,
        user_data_dir=profile_path # Informar la ruta de perfil que quiere iniciar el navegador
    ) 

    # Actualice las opciones para usar opciones personalizadas
    bot.options = def_options

    # Abre el navegador al sitio web de BotCity con un perfil existente
    bot.browse("https://botcity.dev")

    ...
import dev.botcity.framework.bot.WebBot;
import dev.botcity.framework.web.browsers.Browser;

import dev.botcity.framework.web.browsers.ChromeConfig;


public void action(BotExecution botExecution) {
    try {

        String profilePath = "<your browser profile path>/";

        // Configurar si ejecutar o no en modo headless
        setHeadless(false);

        // Busque las opciones predeterminadas para mi navegador favorito
        ChromeConfig chromeConfig = new ChromeConfig();
        ChromeOptions defOptions = (ChromeOptions) chromeConfig.defaultOptions(
                isHeadless(), // Definición del modo headless (usando el estándar)
                profilePath // Informar la ruta de perfil que quiere iniciar el navegador
        );

        // Actualice las opciones para usar opciones personalizadas
        setOptions(defOptions);

        // Abre el navegador al sitio web de BotCity con un perfil existente
        browse("https://botcity.dev");

        ...

Tip

La instalación predeterminada de Chrome generalmente almacena información de perfil de usuario en el camino a esto:

C:\Users\<user>\AppData\Local\Google\Chrome\User Data\Profile 1"

Firefox

Para comenzar el navegador Firefox con un perfil existente con BotCity's Framework Web es muy simple, solo importe la propiedad default_options en su código, y pase la ruta del perfil de usuario elegido a la variable user_data_dir, Como se muestra en el siguiente extracto:

from botcity.web import WebBot, Browser
from botcity.web.browsers.firefox import default_options

def main():
    # Instancia de Webbot
    bot = WebBot()

    # Configurar si ejecutar o no en modo headless
    bot.headless = False

    profile_path = "<your browser profile path>/"

    # Busque las opciones predeterminadas para mi navegador favorito
    # Pasar los parámetros headless y user_data_dir 
    # para ser utilizado al crear el default_options
    def_options = default_options(
        headless=bot.headless,
        user_data_dir=profile_path  # Informar la ruta de perfil que quiere iniciar el navegador
    ) 

    # Actualice las opciones para usar opciones personalizadas
    bot.options = def_options

    # Abre el navegador al sitio web de BotCity con un perfil existente
    bot.browse("https://botcity.dev")

    ...
import dev.botcity.framework.bot.WebBot;
import dev.botcity.framework.web.browsers.Browser;

import dev.botcity.framework.web.browsers.FirefoxConfig;


public void action(BotExecution botExecution) {
    try {

        String profilePath = "<your browser profile path>/";

        // Configure se deve ou não executar no modo headless
        setHeadless(false);

        // Busque las opciones predeterminadas para mi navegador favorito
        FirefoxConfig firefoxConfig = new FirefoxConfig();
        FirefoxOptions defOptions = (FirefoxOptions) firefoxConfig.defaultOptions(
                isHeadless(), // Definición del modo headless (usando el estándar)
                profilePath // Informar la ruta de perfil que quiere iniciar el navegador
        );

        // Actualice las opciones para usar opciones personalizadas
        setOptions(defOptions);

        // Abre el navegador al sitio web de BotCity con un perfil existente
        browse("https://botcity.dev");

        ...

Tip

La instalación predeterminada de Firefox generalmente almacena información de perfil de usuario en el camino a esto:

C:\Users\<user>\AppData\Local\Mozilla\Firefox\Profiles\profile_1

Microsoft Edge (MSEdge)

Para comenzar el navegador Edge con un perfil existente con BotCity's Framework Web es muy simple, solo importe la propiedad default_options en su código, y pase la ruta del perfil de usuario elegido a la variable user_data_dir, Como se muestra en el siguiente extracto:

from botcity.web import WebBot, Browser
from botcity.web.browsers.edge import default_options

def main():
    # Instancia de Webbot
    bot = WebBot()

    # Configure se deve ou não executar no modo headless
    bot.headless = False

    profile_path = "<your browser profile path>/"

    # Busque las opciones predeterminadas para mi navegador favorito
    # Pasar los parámetros headless y user_data_dir 
    # para ser utilizado al crear el default_options
    def_options = default_options(
        headless=bot.headless,
        user_data_dir=profile_path  # Informar la ruta de perfil que quiere iniciar el navegador
    ) 

    # Actualice las opciones para usar opciones personalizadas
    bot.options = def_options

    # Abre el navegador al sitio web de BotCity con un perfil existente
    bot.browse("https://botcity.dev")


    ...
import dev.botcity.framework.bot.WebBot;
import dev.botcity.framework.web.browsers.Browser;

import dev.botcity.framework.web.browsers.EdgeConfig;


public void action(BotExecution botExecution) {
    try {

        String profilePath = "<your browser profile path>/";

        // Configure se deve ou não executar no modo headless
        setHeadless(false);

        // Busque las opciones predeterminadas para mi navegador favorito
        EdgeConfig edgeConfig = new EdgeConfig();
        EdgeOptions defOptions = (EdgeOptions) edgeConfig.defaultOptions(
                isHeadless(), // Definición del modo headless (usando el estándar)
                profilePath // Informar la ruta de perfil que quiere iniciar el navegador
        ); 

        // Actualice las opciones para usar opciones personalizadas
        setOptions(defOptions);

        // Abre el navegador al sitio web de BotCity con un perfil existente
        browse("https://botcity.dev");

        ...

Tip

La instalación predeterminada de Edge generalmente almacena información de perfil de usuario en el camino a esto:

C:\Users\<user>\AppData\Local\Microsoft\Edge\User Data\Profile 1

Si desea definir el perfil predeterminado, simplemente cambie el Profile 1 por Default.

Con estas instrucciones, puede configurar BotCity Framework Web para usar un perfil existente en los navegadores compatibles, lo que permite la reutilización de sesiones de inicio de sesión y mejorando la eficiencia de sus automatizaciones web.