Saltar al contenido principal
Roberty Studio
RPAMódulos

Browser

Browser

El módulo Browser es responsable de realizar todas las acciones dentro de un navegador. Sus métodos pueden accederse conforme al ejemplo a continuación:

js
const navegador = await Browser.open["v1_0_0"]({
url: `https://www.google.com.br/`,
browser: `chrome`,
})

Métodos​

apiRequest​

Método responsable de realizar solicitudes a una determinada API a través de su url.

js
const response = await Browser.apiRequest["v1_0_0"]({
browser: navegador,
url: `https://api.com.br/api/v1/cars/${carsID}}/`,
requestConfig: {
method: 'GET',
}
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.
  • url: String - URL de la API.

Parámetros opcionales​

  • requestConfig: Object - espera un objeto con las configuraciones de la solicitud. Las opciones son todas aquellas propiedades disponibles en la clase de la API Request, que pueden encontrarse haciendo clic aquí.

Retorno​

La constante o variable creada, como la response del ejemplo mostrado anteriormente, recibirá el retorno de la solicitud.

checkBox​

Método responsable de marcar o desmarcar un elemento del navegador.

js
await Browser.checkBox["v1_0_0"]({
browser: navegador,
selector: `#btn-checkBox`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • selector: String - espera un string para indicar el elemento que será clicado.
  • element: Element<SVGElement|HTMLElement> - espera un valor del tipo Element<SVGElement|HTMLElement> obtenido a través del método getElement. Este valor es opcional si los parámetros selector y browser están completados.

Parámetros opcionales​

  • option: Boolean - espera un valor booleano que representará si será marcada o desmarcada.
  • timeout: Number - espera un valor en milisegundos para indicar el tiempo máximo de espera para que el elemento sea reconocido. Si no se pasa, el valor predeterminado es 30000 milisegundos.
  • state: String - espera un string para indicar el estado del elemento que será clicado. Si no se pasa, el valor predeterminado es visible. Los tipos de estados son:
    • visible - Elemento visible;
    • hidden: Elemento oculto;
    • attached: Elemento presente en la estructura del DOM (HTML de la página);
    • detached: Elemento no presente en la estructura del DOM.

click​

Método responsable de hacer clic en un elemento del navegador.

js
await Browser.click["v1_0_0"]({
browser: navegador,
selector: `#btn-click`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • selector: String - espera un string para indicar el elemento que será clicado.
  • element: Element<SVGElement|HTMLElement> - espera un valor del tipo Element<SVGElement|HTMLElement> obtenido a través del método getElement. Este valor es opcional si los parámetros selector y browser están completados.

Parámetros opcionales​

  • button: String - espera un string para indicar el botón del mouse que será utilizado para hacer clic en el elemento. Si no se pasa, el valor predeterminado es left. Los tipos de botones son:
    • left - Botón izquierdo del mouse;
    • middle: Botón central del mouse;
    • right: Botón derecho del mouse.
  • delay: Number - espera un valor en milisegundos para indicar el tiempo de espera entre presionar y soltar el botón del mouse. Si no se pasa, el valor predeterminado es 0.
  • timeout: Number - espera un valor en milisegundos para indicar el tiempo máximo de espera para que el elemento sea reconocido. Si no se pasa, el valor predeterminado es 30000 milisegundos.
  • state: String - espera un string para indicar el estado del elemento que será clicado. Si no se pasa, el valor predeterminado es visible. Los tipos de estados son:
    • visible - Elemento visible;
    • hidden: Elemento oculto;
    • attached: Elemento presente en la estructura del DOM (HTML de la página);
    • detached: Elemento no presente en la estructura del DOM.
  • force: Boolean - espera un valor booleano para indicar si el clic será realizado ignorando los estados de los elementos. Si no se pasa, el valor predeterminado es false.

clickLocator​

Acción responsable de hacer clic en un elemento a partir de su XPath de una determinada página ya abierta en un navegador.

js
await Browser.clickLocator["v1_0_0"]({
browser: navegador,
xPath: `/html/body/div/div[1]/main/div[3]/div[2]/div/div/div/a/button`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • xPath: String - espera un string para indicar el elemento que será clicado.

clickText​

Acción responsable de realizar un clic en un elemento con un texto indicado de una determinada página ya abierta. El clic puede ser en el primer elemento con el texto indicado que se encuentre, en todos o con un índice indicado.

js
await Browser.clickText["v1_0_0"]({
browser: navegador,
text: `Clique aqui`,
indice: 1
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • text: String - espera un string con el texto del elemento

Parámetros opcionales​

  • indice: Number - espera un number con el índice del elemento.

close​

Método responsable de cerrar un navegador.

js
await Browser.close["v1_0_0"]({
browser: navegador,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.

downloadFile​

Método responsable de realizar la descarga de un archivo a través de un elemento o selector que tiene el evento de descarga, o descargarlo a través de una URL.

js
await Browser.downloadFile["v2_0_0"]({
browser: browser,
selector: '#hl > a',
downloadPath: 'C:/Users/Roberty/Downloads',
filename: 'documento.pdf',
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.
  • selector: String - espera un string para indicar el elemento que tiene el evento de descarga.
  • element: Element<SVGElement|HTMLElement> - espera un valor del tipo Element<SVGElement|HTMLElement> obtenido a través del método getElement. Este valor es opcional si los parámetros selector y browser están completados.
  • url: String - espera un string para indicar la URL que será utilizada para realizar la descarga. Este valor es opcional si los parámetros selector y browser están completados.
  • downloadPath: String - espera un string para indicar la ruta donde será guardado el archivo.

Parámetros opcionales​

  • filename: String - espera un string para indicar el nombre del archivo que será guardado. Este valor es opcional; si no se pasa, el nombre del archivo se generará aleatoriamente.

existElement​

Método responsable de verificar si un elemento existe en la página.

js
const flagElement = await Browser.existElement["v1_0_0"]({
browser: browser,
selector: '#input-id',
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.
  • selector: String - espera un string para indicar el elemento que será verificado.

Parámetros opcionales​

  • timeout: Number - espera un valor en milisegundos para indicar el tiempo máximo de espera para que el elemento sea reconocido. Si no se pasa, el valor predeterminado es 1000 milisegundos.
    • state: String - espera un string para indicar el estado del elemento que será clicado. Si no se pasa, el valor predeterminado es visible. Los tipos de estados son:
      • visible - Elemento visible;
      • hidden: Elemento oculto;
      • attached: Elemento presente en la estructura del DOM (HTML de la página);
      • detached: Elemento no presente en la estructura del DOM.

Retorno​

La constante o variable creada, como el flagElement mostrado en el ejemplo anterior, recibirá true si el elemento existe en la página y false en caso contrario.

fillField​

Acción responsable de completar un elemento de una determinada página ya abierta en un navegador. Ese elemento podemos completarlo a partir de su label o placeholder.

js
const fillField = await Browser.fillField["v1_0_0"]({
browser: browser,
text: string
fillText: string
option?: `placeholder` | `label`
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.
  • text: String - espera un string para indicar el elemento que será completado.
  • fillText: String - espera un string con el texto que deseas completar.

Parámetros opcionales​

  • option: String - espera un string para indicar a partir de qué texto se completará. Los tipos son:
    • placeholder - Placeholder;
    • label: Label.

Retorno​

La constante o variable creada, como el flagElement mostrado en el ejemplo anterior, recibirá true si el elemento existe en la página y false en caso contrario.

focus​

Método responsable de enfocar un elemento del navegador.

js
const focusedElement = await Browser.focus["v1_0_0"]({
browser: navegador,
selector: `#input`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este valor es opcional si el parámetro element está completado.
  • selector: String - espera un string para indicar el elemento que será enfocado. Este valor es opcional si el parámetro element está completado.
  • element: Element<SVGElement|HTMLElement> - espera un valor del tipo Element<SVGElement|HTMLElement> obtenido a través del método getElement. Este valor es opcional si los parámetros selector y browser están completados.

Retorno​

La constante o variable creada para recibir el retorno del método, como la constante focusedELement mostrada en el ejemplo anterior, recibirá un valor del tipo Element<SVGElement|HTMLElement>, es decir, el elemento que fue enfocado.

getElement​

Método responsable de obtener un elemento del navegador o de un elemento ya obtenido por otro método getElement.

js
const elemento = await Browser.getElement["v1_0_0"]({
browser: navegador,
selector: `#btn-click`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • selector: String - espera un string para indicar el elemento que será obtenido.
  • element: Element<SVGElement|HTMLElement> - espera un valor del tipo Element<SVGElement|HTMLElement> obtenido a través del método getElement. Este valor es opcional si los parámetros selector y browser están completados.

Parámetros opcionales​

  • timeout: Number - espera un valor en milisegundos para indicar el tiempo máximo de espera para que el elemento sea reconocido. Si no se pasa, el valor predeterminado es 30000 milisegundos.
  • state: String - espera un string para indicar el estado del elemento que será obtenido. Si no se pasa, el valor predeterminado es visible. Los tipos de estados son:
    • visible - Elemento visible;
    • hidden: Elemento oculto;
    • attached: Elemento presente en la estructura del DOM;
    • detached: Elemento no presente en la estructura del DOM.

Retorno​

En la constante elemento mostrada en el ejemplo anterior, será devuelto un valor del tipo Element<SVGElement|HTMLElement>, por lo que será posible utilizar todos los métodos pertenecientes al tipo Element<SVGElement|HTMLElement>. El usuario puede encontrar todos esos métodos haciendo clic aquí.

getElementAttribute​

Método responsable de obtener el valor de un atributo de un elemento, incluido su texto visible o su HTML interno.

js
const atributo = await Browser.getElementAttribute["v1_0_0"]({
browser: navegador,
selector: `#titulo`,
attribute: `innerText`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • selector: String - espera un string para indicar de qué elemento será obtenido el valor del atributo.
  • element: Element<SVGElement|HTMLElement> - espera un valor del tipo Element<SVGElement|HTMLElement> obtenido a través del método getElement. Este valor es opcional si los parámetros selector y browser están completados.
  • attribute: String - espera el nombre del atributo html que será obtenido. También acepta innerText (texto visible del elemento) e innerHTML (HTML interno del elemento).

Retorno​

En la constante atributo mostrada en el ejemplo anterior, será devuelto un String con el valor obtenido, o null si el elemento no tiene el atributo.

getElementAttributeHtml​

Método responsable de obtener el valor de un atributo html de un elemento.

js
const atributo = await Browser.getElementAttributeHtml["v1_0_0"]({
browser: navegador,
selector: `#btn-click`,
attribute: `id`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • selector: String - espera un string para indicar de qué elemento será obtenido el valor del atributo html.
  • element: Element<SVGElement|HTMLElement> - espera un valor del tipo Element<SVGElement|HTMLElement> obtenido a través del método getElement. Este valor es opcional si los parámetros selector y browser están completados.
  • attribute: String - espera un string para indicar el atributo html que será obtenido.

Retorno​

En la constante atributo mostrada en el ejemplo anterior, será devuelto un String con el valor presente en el atributo html indicado.

getElementHtml​

Método responsable de obtener el valor de un elemento html.

js
const atributo = await Browser.getElementHtml["v1_0_0"]({
browser: navegador,
selector: `#btn-click`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • selector: String - espera un string para indicar de qué elemento será obtenido el html.
  • element: Element<SVGElement|HTMLElement> - espera un valor del tipo Element<SVGElement|HTMLElement> obtenido a través del método getElement. Este valor es opcional si los parámetros selector y browser están completados.

Retorno​

Devuelve un String con el valor presente en el elemento.

getElementText​

Método responsable de obtener el valor de un elemento de texto.

js
const atributo = await Browser.getElementText["v1_0_0"]({
browser: navegador,
selector: `#btn-click`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • selector: String - espera un string para indicar de qué elemento será obtenido el texto.
  • element: Element<SVGElement|HTMLElement> - espera un valor del tipo Element<SVGElement|HTMLElement> obtenido a través del método getElement. Este valor es opcional si los parámetros selector y browser están completados.

Retorno​

Devuelve un String con el valor presente en el elemento.

getElements​

Método responsable de obtener varios elementos y almacenarlos en un array.

js
const elementos = await Browser.getElements["v1_0_0"]({
browser: navegador,
selector: `#btn-click`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • selector: String - espera un string para indicar el elemento que será obtenido.
  • element: Element<SVGElement|HTMLElement> - espera un valor del tipo Element<SVGElement|HTMLElement> obtenido a través del método getElement. Este valor es opcional si los parámetros selector y browser están completados.

Parámetros opcionales​

  • timeout: Number - espera un valor en milisegundos para indicar el tiempo máximo de espera para que el elemento sea reconocido. Si no se pasa, el valor predeterminado es 30000 milisegundos.
  • state: String - espera un string para indicar el estado del elemento que será obtenido. Si no se pasa, el valor predeterminado es visible. Los tipos de estados son:
    • visible - Elemento visible;
    • hidden: Elemento oculto;
    • attached: Elemento presente en la estructura del DOM;
    • detached: Elemento no presente en la estructura del DOM.

Retorno​

En la constante elementos mostrada en el ejemplo anterior, será devuelto un valor del tipo Element<SVGElement|HTMLElement>[], es decir, un array de elementos del tipo Element<SVGElement|HTMLElement>. Así el usuario podrá utilizar cualquier método o propiedad de array para manipular los elementos presentes en él. Haz clic aquí para ver todos los métodos y propiedades de un array.

getIframe​

Método responsable de obtener un iframe.

js
const iframe = await Browser.getIframe["v1_0_0"]({
browser: navegador,
selector: `#iframe`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open. Este parámetro no debe completarse si se pasa el parámetro element.
  • selector: String - espera un string para indicar el elemento que será obtenido.

Retorno​

  • iframe._args: Object - devuelve un objeto con las configuraciones del iframe.
  • iframe._browser: Browser - devuelve una instancia del tipo Browser con el contexto del iframe que fue obtenido.
  • iframe._page: Page - devuelve una instancia Page del Iframe.

getPageURL​

Método responsable de obtener la URL de la página actual.

js
const url = await Browser.getPageURL["v1_0_0"]({
browser: navegador,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.

Retorno​

Devuelve un string que será la URL de la página actual.

goto​

Método responsable de dirigir la página del navegador a una determinada URL.

js
await Browser.goto["v1_0_0"]({
browser: navegador,
url: `https://roberty.app/`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.
  • url: String - espera una url válida para dirigir la página del navegador.

Parámetros opcionales​

  • timeout: Number - espera un valor en milisegundos para indicar el tiempo máximo de espera para que la página se cargue. Si no se pasa, el valor predeterminado es 30000 milisegundos.
  • waitUntil: String - espera un string para indicar el tipo de condición de espera para que la página se cargue. Si no se pasa, el valor predeterminado es load. Los tipos de condición de espera son:
    • Load - Carga estándar: Espera la carga de la página (opción predeterminada);
    • DOMContentLoaded: Espera la carga total de la estructura (componentes HTML sin el CSS ni las imágenes) de la página;
    • Carga vía *network*: Espera la carga a través de los recursos de red. Si no hay ninguna solicitud de red durante 0,5 segundo, la acción entenderá que la página está completamente cargada.

open​

Método responsable de abrir un navegador y dirigirlo a una URL.

js
const navegador = await Browser.open["v1_0_0"]({
url: `https://roberty.app/`,
browser: `chrome`,
})

Parámetros obligatorios​

  • url: String - espera una url válida para dirigir el navegador en cuanto se abra.
  • browser: String - espera el nombre del navegador que será utilizado.

Parámetros opcionales​

  • incognito: Boolean - espera un valor booleano para indicar si el navegador será abierto en modo incógnito. Si no se pasa, el valor predeterminado es false.
  • options: Object - espera un objeto con las configuraciones del navegador. Acepta todas las configuraciones de contexto de navegador proporcionadas por la biblioteca Playwright.

Retornos​

  • navegador._args: Object - devuelve un objeto con las configuraciones del navegador.
  • navegador._browser: Browser - devuelve una instancia del tipo Browser con el contexto del navegador que fue abierto.
  • navegador._page: Page - devuelve una instancia del tipo Page con la página que fue abierta.

pressKey​

Método responsable de presionar una tecla en un elemento del navegador.

js
const pressedElement = await Browser.pressKey["v1_0_0"]({
browser: navegador,
selector: `#button-login`,
key: `Enter`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.
  • selector: String - espera un string para indicar el elemento que será presionado.
  • element: Element - espera un elemento obtenido a través del método getElement. Este parámetro es opcional si el parámetro selector está completado.
  • key: String - espera un string para indicar la tecla que será presionada.

Parámetros opcionales​

  • count: Number - espera un valor entero para indicar la cantidad de veces que la tecla será presionada en el elemento. Si no se pasa, el valor predeterminado es 1.
  • delay: Number - espera un valor en milisegundos para indicar el tiempo de espera entre cada pulsación. Si no se pasa, el valor predeterminado es 0.

Retorno​

La constante o variable creada para recibir el retorno del método, como la constante pressedElement mostrada en el ejemplo anterior, recibirá un valor del tipo Element<SVGElement|HTMLElement>, es decir, el elemento que fue enfocado.

reload​

Método responsable de recargar la página de una instancia de un navegador.

js
await Browser.reload["v1_0_0"]({
browser: navegador,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.

Parámetros opcionales​

  • timeout: Number - espera un valor en milisegundos para indicar el tiempo máximo de espera para que la página se cargue. Si no se pasa, el valor predeterminado es 30000 milisegundos.
  • waitUntil: String - espera un string para indicar el tipo de condición de espera para que la página se cargue. Si no se pasa, el valor predeterminado es load. Los tipos de condición de espera son:
    • Load - Carga estándar: Espera la carga de la página (opción predeterminada);
    • DOMContentLoaded: Espera la carga total de la estructura (componentes HTML sin el CSS ni las imágenes) de la página;
    • Carga vía *network*: Espera la carga a través de los recursos de red. Si no hay ninguna solicitud de red durante 0,5 segundo, la acción entenderá que la página está completamente cargada.

screenShot​

Método responsable de capturar la imagen de un elemento del navegador.

js
const screenshot = await Browser.screenShot["v1_0_0"]({
browser: navegador,
selector: `#button-login`,
filePath: 'C:/Users/Murillo Candioto/Download',
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.
  • selector: String - espera un string para indicar el elemento que será capturado.
  • element: Element - espera un elemento obtenido a través del método getElement. Este parámetro es opcional si el parámetro selector está completado.
  • filePath: String - espera un string para indicar la ruta en la que será guardada la captura del elemento.

Parámetros opcionales​

  • fileName: String - espera un string para indicar el nombre del archivo que será guardado. Si no se pasa, se generará un nombre aleatorio.
  • fileType: String - espera un string para indicar el tipo de archivo que será guardado: png o jpeg. Si no se pasa, se generará un archivo JPEG.
  • quality: Number - calidad de la imagen, de 0 a 100. Valor predeterminado: 100.
  • omitBackground: Boolean - cuando es true, omite el fondo blanco predeterminado, permitiendo capturas con transparencia. Valor predeterminado: false.

Retorno​

La constante o variable creada para recibir el retorno del método, como la constante screenshot mostrada en el ejemplo anterior, recibirá un valor del tipo String, es decir, la ruta del archivo guardado.

typeInput​

Método responsable de escribir un texto en un elemento del navegador.

js
const typedElement = await Browser.typeInput["v1_0_0"]({
browser: navegador,
selector: `#input-login`,
value: `usuario`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.
  • selector: String - espera un string para indicar el elemento en el que se escribirá.
  • element: Element - espera un elemento obtenido a través del método getElement. Este parámetro es opcional si el parámetro selector está completado.
  • value: String - espera un string que será el texto que se escribirá en el elemento.

Parámetros opcionales​

  • clearBefore: Boolean - espera un valor booleano para indicar si el elemento deberá limpiarse antes de escribir el texto. Si no se pasa, el valor predeterminado es false.
  • delay: Number - espera un valor en milisegundos para indicar el tiempo de espera entre cada carácter que será escrito. Si no se pasa, el valor predeterminado es 0.
  • state: String - espera un string para indicar el estado del elemento que será clicado. Si no se pasa, el valor predeterminado es visible. Los tipos de estados son:
    • visible - Elemento visible;
    • hidden: Elemento oculto;
    • attached: Elemento presente en la estructura del DOM (HTML de la página);
    • detached: Elemento no presente en la estructura del DOM.

Retorno​

La constante o variable creada para recibir el retorno del método, como la constante typedElement mostrada en el ejemplo anterior, recibirá un valor del tipo Element<SVGElement|HTMLElement>, es decir, el elemento que fue enfocado.

upload​

Método responsable de cargar un archivo en un elemento del navegador.

js
const uploadedElement = await Browser.upload["v1_0_0"]({
browser: navegador,
selector: `#input-file`,
files: [`C:/Users/Roberty/Download/file1.txt`,`C:/Users/Roberty/Download/file2.txt`]
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.
  • selector: String - espera un string para indicar el elemento que será clicado.
  • element: Element - espera un elemento obtenido a través del método getElement. Este parámetro es opcional si el parámetro selector está completado.
  • files: String[] - espera un array de strings con las rutas de los archivos que serán enviados.

Parámetros opcionales​

  • noWaitAfter: Boolean - espera un valor booleano para indicar si el método deberá esperar el fin de la carga. Si no se pasa, el valor predeterminado es false.
  • timeout: Number - espera un valor en milisegundos para indicar el tiempo de espera para el fin de la carga. Si no se pasa, el valor predeterminado es 0.

Retorno​

La constante o variable creada para recibir el retorno del método, como la constante uploadedElement mostrada en el ejemplo anterior, recibirá un valor del tipo Element<SVGElement|HTMLElement>, es decir, el elemento que recibió los archivos.

waitForNavigation​

Método responsable de esperar que la página del navegador se cargue.

js
await Browser.waitForNavigation["v1_0_0"]({
browser: navegador,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.

Parámetros opcionales​

  • timeout: Number - espera un valor en milisegundos para indicar el tiempo máximo de espera para que la página se cargue. Si no se pasa, el valor predeterminado es 30000 milisegundos.
  • waitUntil: String - espera un string para indicar el tipo de condición de espera para que la página se cargue. Si no se pasa, el valor predeterminado es load. Los tipos de condición de espera son:
    • Load - Carga estándar: Espera la carga de la página (opción predeterminada);
    • DOMContentLoaded: Espera la carga total de la estructura (componentes HTML sin el CSS ni las imágenes) de la página;
    • Carga vía *network*: Espera la carga a través de los recursos de red. Si no hay ninguna solicitud de red durante 0,5 segundo, la acción entenderá que la página está completamente cargada.

newTab​

Método responsable de abrir una nueva página en un navegador. El navegador puede ser uno que ya está abierto o uno que puede abrir la propia acción. Basta con pasar el campo browser en lugar de _browser para que la página se abra en un nuevo navegador.

js
const pagina = await Browser.newTab.v1_0_0({
_browser: navegador,
url: 'https://google.com'
})

Parámetros obligatorios​

  • url: String - espera una url válida que se abrirá en la nueva página.

Parámetros opcionales​

  • _browser: Browser - espera una instancia del tipo Browser que puede obtenerse a través de los métodos open, newTab, getTab getTabFromList o getMostRecentTab. Este campo solo es opcional si el campo browser está completado.
  • browser: String - espera el nombre del navegador instalado en la máquina del usuario, siendo chrome o edge. Este campo es opcional si el campo _browser está completado.
  • headless: Boolean - espera un valor verdadero o falso que indica si el navegador aparecerá en la pantalla o se ejecutará oculto. Solo será necesario pasar este campo cuando browser esté completado.
  • incognito: Boolean - espera un valor verdadero o falso que indica si el navegador se abrirá en modo anónimo. Solo será necesario pasar este campo cuando browser esté completado.
  • keepOpened: Boolean - espera un valor verdadero o falso que indica si el navegador continuará abierto después de la ejecución o no. Solo será necesario pasar este campo cuando browser esté completado.
  • timeout: Number - espera un valor en milisegundos para indicar el tiempo máximo de espera para que la página se cargue. Si no se pasa, el valor predeterminado es 30000 milisegundos.
  • waitUntil: String - espera un string para indicar el tipo de condición de espera para que la página se cargue. Si no se pasa, el valor predeterminado es load. Los tipos de condición de espera son:
    • Load - Carga estándar: Espera la carga de la página (opción predeterminada);
    • DOMContentLoaded: Espera la carga total de la estructura (componentes HTML sin el CSS ni las imágenes) de la página;
    • Carga vía *network*: Espera la carga a través de los recursos de red. Si no hay ninguna solicitud de red durante 0,5 segundo, la acción entenderá que la página está completamente cargada.

Retornos​

  • pagina._args: Object - devuelve un objeto con las configuraciones del navegador en el que está la nueva página.
  • pagina._browser: Browser - devuelve una instancia del tipo Browser con el contexto del navegador en el que está la nueva página.
  • pagina._page: Page - devuelve una instancia del tipo Page con la página que fue abierta.

closeTab​

Método responsable de cerrar una página específica abierta en un navegador.

js
await Browser.closeTab.v1_0_0({
browser: pagina
})

Parámetros obligatorios​

getTab​

Método responsable de obtener una página del navegador que fue abierta fuera de contexto, como por ejemplo, hacer clic en un botón que abre una nueva página y es necesario manipularla con las acciones.

js
const pagina = await Browser.getTab.v1_0_0({
browser: navegador,
getBy: `url`,
value: `google.com`

})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser que puede obtenerse a través de los métodos open, newTab, getTab,getTabFromList o getMostRecentTab.
  • getBy: Este campo dictará qué se usará para tomar la página que fue abierta fuera de contexto. Se deberá elegir una de las opciones a continuación:
    • url: String - en esta opción, la página será buscada a través de su url.
    • selector: String - en esta opción, la página será buscada a través del selector de un elemento que existe en ella.
    • title: String - en esta opción, la página será buscada a través del título de la página.
    • position: Number - tomará la página que está en la posición indicada.
  • value: espera el valor de acuerdo con el campo anterior getBy.

Retornos​

  • pagina._args: Object - devuelve un objeto con las configuraciones del navegador en el que está la página obtenida.
  • pagina._browser: Browser - devuelve una instancia del tipo Browser con el contexto del navegador en el que está la página obtenida.
  • pagina._page: Page - devuelve una instancia del tipo Page con la página que fue abierta.

getAllTabs​

Método responsable de obtener todas las páginas abiertas en un navegador.

js
const todasPaginas = await Browser.getAllTabs.v1_0_0({
browser: navegador
})

Parámetros obligatorios​

Retornos​

El retorno de este método es un array que contiene la estructura de todas las páginas obtenidas. La estructura contiene las siguientes propiedades:

  • pagina._args: Object - devuelve un objeto con las configuraciones del navegador.
  • pagina._browser: Browser - devuelve una instancia del tipo Browser con el contexto del navegador.
  • pagina._page: Page - devuelve una instancia del tipo Page con la página que fue abierta.

getTabFromList​

Método responsable de obtener una página que está presente en la lista de páginas obtenidas por la acción getAllTabs

js
const pagina = await Browser.getTabFromList.v1_0_0({
listSchemaBrowser: todasPaginas,
getBy: `url`,
value: `google.com`

})

Parámetros obligatorios​

  • listSchemaBrowser: Browser - espera una lista que puede obtenerse a través del método getAllTabs.
  • getBy: Este campo dictará qué se usará para tomar la página que está dentro de la lista. Se deberá elegir una de las opciones a continuación:
    • url: String - en esta opción, la página será buscada a través de su url.
    • selector: String - en esta opción, la página será buscada a través del selector de un elemento que existe en ella.
    • title: String - en esta opción, la página será buscada a través del título de la página.
    • position: Number - tomará la página que está en la posición indicada.
  • value: espera el valor de acuerdo con el campo anterior getBy.

Retornos​

  • pagina._args: Object - devuelve un objeto con las configuraciones del navegador en el que está la página obtenida.
  • pagina._browser: Browser - devuelve una instancia del tipo Browser con el contexto del navegador en el que está la página obtenida.
  • pagina._page: Page - devuelve una instancia del tipo Page con la página que fue abierta.

getMostRecentTab​

Método responsable de obtener una página del navegador que fue abierta fuera de contexto, como por ejemplo, hacer clic en un botón que abre una nueva página y es necesario manipularla con las acciones.

js
const pagina = await Browser.getMostRecentTab.v1_0_0({
browser: navegador,
})

Parámetros obligatorios​

Retornos​

  • pagina._args: Object - devuelve un objeto con las configuraciones del navegador en el que está la página obtenida.
  • pagina._browser: Browser - devuelve una instancia del tipo Browser con el contexto del navegador en el que está la página obtenida.
  • pagina._page: Page - devuelve una instancia del tipo Page con la página que fue abierta.

commonCaptchaSolve​

Método responsable de resolver un captcha de imagen en el navegador que tiene símbolos ocultando las letras y números.

js
const commonCaptchaSolve = await Browser.commonCaptchaSolve["v1_0_0"]({
browser: navegador,
selectorImg: `#imagemCaptcha`,
selectorInput: '#input',
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser obtenida a través del método open.
  • selectorImg: String - espera un string que debe ser el selector del elemento donde está la imagen del captcha.
  • selectorInput: String - espera un string que debe ser el selector del campo de llenado del captcha.

Retorno​

Esta acción no tiene retornos.

reCaptchaImageSolve​

Acción responsable de resolver captchas de navegador que requieren hacer clic en determinadas imágenes de un mismo aspecto.

js
const reCaptchaImageSolve = await Browser.reCaptchaImageSolve.v1_0_0({
browser: navegador
})

Parámetros obligatorios​

Retornos​

  • reCaptchaImageSolve.value: Value - Devuelve la respuesta de la resolución del captcha.

reCaptchaSolve​

Acción responsable de resolver captchas de navegador que necesitan solo un clic que confirma "no ser un robot".

js
const recaptchaSolve = await Browser.reCaptchaSolve.v1_0_0({
browser: navegador
})

Parámetros obligatorios​

Retornos​

  • recaptchaSolve.value: Value - Devuelve la respuesta de la resolución del captcha.

setSelectOptions​

Acción responsable de definir un valor, tanto por texto como por posición, en un menú de opciones.

js
const setSelectOptions = await Browser.setSelectOptions.v1_0_0({
value: '',
browser: navegador,
selector: ''
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser que puede obtenerse a través de los métodos open, newTab, getTab o getTabFromList.
  • value: String/Number - Este campo debe completarse con el valor referente al valor que se desea seleccionar.
  • selector: String - espera un string para indicar el elemento que será clicado.

Parámetros opcionales​

  • type: String - indica cómo será interpretado el campo value. Valor predeterminado: index. Las opciones son:
    • index: Number - selecciona la opción de acuerdo con la posición indicada;
    • label: String - selecciona la opción de acuerdo con el texto mostrado.

AIBrowserExtract​

Método responsable de extraer datos de la página con la ayuda de inteligencia artificial. Si la información pedida no está visible, la IA puede interactuar con la página (hacer clic, escribir, etc.) hasta encontrarla.

js
const resultado = await Browser.AIBrowserExtract["v1_0_0"]({
browser: navegador,
prompt: `Qual é o valor total do pedido?`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser que puede obtenerse a través de los métodos open, newTab, getTab o getTabFromList.
  • prompt: String - instrucción, en lenguaje natural, de lo que la IA debe hacer en la página.

Parámetros opcionales​

  • timeout: Number - tiempo máximo, en milisegundos, de espera por cada respuesta de la IA. Valor predeterminado: 0 (sin límite).

Retorno​

La constante o variable creada, como la resultado del ejemplo mostrado anteriormente, recibirá un objeto con las siguientes propiedades:

  • resultado.aiResponse: String - respuesta final de la IA, en texto.
  • resultado.rawResponse: Object - respuesta completa devuelta por la IA.
  • resultado.success: Boolean - indica si la acción fue concluida.
  • resultado.iterations: Number - cantidad de ciclos de análisis de la página realizados (como máximo 10).
  • resultado.finalBrowserContent: Object - captura de la página (URL, elementos clicables y árbol de accesibilidad) usada en el análisis.

AIBrowserObserve​

Método responsable de describir, con la ayuda de inteligencia artificial, el estado actual de la página de acuerdo con la instrucción indicada.

js
const resultado = await Browser.AIBrowserObserve["v1_0_0"]({
browser: navegador,
prompt: `A mensagem de sucesso foi exibida?`,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser que puede obtenerse a través de los métodos open, newTab, getTab o getTabFromList.
  • prompt: String - instrucción, en lenguaje natural, de lo que la IA debe hacer en la página.

Parámetros opcionales​

  • timeout: Number - tiempo máximo, en milisegundos, de espera por cada respuesta de la IA. Valor predeterminado: 0 (sin límite).

Retorno​

La constante o variable creada, como la resultado del ejemplo mostrado anteriormente, recibirá un objeto con las siguientes propiedades:

  • resultado.aiResponse: String - respuesta final de la IA, en texto.
  • resultado.rawResponse: Object - respuesta completa devuelta por la IA.
  • resultado.success: Boolean - indica si la acción fue concluida.
  • resultado.iterations: Number - cantidad de ciclos de análisis de la página realizados (como máximo 10).
  • resultado.finalBrowserContent: Object - captura de la página (URL, elementos clicables y árbol de accesibilidad) usada en el análisis.

capMonsterSolve​

Acción responsable de resolver el captcha de la página a través de la extensión CapMonster, haciendo clic en el botón de la extensión y esperando el resultado.

js
await Browser.capMonsterSolve["v2_0_0"]({
browser: navegador,
timeout: 120000,
})

Parámetros obligatorios​

  • browser: Browser - espera una instancia del tipo Browser que puede obtenerse a través de los métodos open, newTab, getTab o getTabFromList.
  • timeout: Number - tiempo máximo, en milisegundos, de espera por la resolución del captcha.

Parámetros opcionales​

  • selector: String - disponible en la v2_0_0. Selector del elemento que contiene el captcha, usado cuando hay más de un captcha en la página.

Retorno​

Esta acción no tiene retornos. Si la extensión indica una falla o se alcanza el tiempo límite, la ejecución se interrumpe con error.