Saltar a contenido

Python "Hola Web Bot"

Warning

Este tutorial utiliza una versión antigua de la plantilla de proyecto ofrecida por BotCity.

Si has utilizado esta plantilla antes y tienes alguna pregunta, puedes continuar utilizando esta guía como de costumbre.

Si estás comenzando con automatizaciones en Python, te recomendamos encarecidamente utilizar la nueva versión de la plantilla de proyecto.

Este tutorial te guiará a través del proceso de creación de una automatización web simple en Python.

Prerrequisitos

Descargar el controlador del navegador web

Para poder trabajar con automatizaciones web, necesitamos utilizar el controlador de navegador correspondiente para comunicarnos con los navegadores para la automatización. Para hacer esto, es necesario que el controlador de navegador elegido esté instalado y disponible preferiblemente en tu PATH. Si no puedes agregar el controlador de navegador necesario a tu PATH, podrás informar la ruta del controlador a través del código en tu bot.

Aquí tienes una lista de navegadores compatibles junto con enlaces para descargar el controlador correspondiente:

Navegador Descarga del controlador
Chrome ChromeDriver
Firefox GeckoDriver
Edge MSDriverEdge
IE IEDriverServer

Sigue las instrucciones en el sitio web del controlador de navegador para la instalación y configuración.

Una vez que el controlador de navegador deseado para el navegador web que se utilizará esté instalado, podemos proceder a los siguientes pasos.

Crear tu primer proyecto

BotCity ofrece un proyecto de plantilla que se puede personalizar mediante una herramienta llamada cookiecutter.

Instalar Cookiecutter

Para usarlo, primero necesitamos instalar el paquete de Python cookiecutter ejecutando el siguiente comando en tu terminal de línea de comandos:

python -m pip install --upgrade cookiecutter

Después de hacer esto, estará listo para crear su primera automatización de Python utilizando el framework de BotCity.

De la plantilla al proyecto

Con cookiecutter instalado correctamente, es hora de utilizarlo y crear un nuevo proyecto.

Para crear un nuevo proyecto usando nuestra plantilla invocaremos el cookiecutter y proporcionaremos como argumento la URL en la que se encuentran las plantillas de BotCity:

python -m cookiecutter https://github.com/botcity-dev/bot-python-template/archive/main.zip

El sistema le solicitará un par de respuestas para poder crear correctamente su proyecto.

  • Una vez que se le solicite project_type, responda con 2 para Web y presione Intro;
  • Para bot_id escriba HelloWebBot y presione enter;
  • En project_name escriba Hola Web Bot y presione Intro;
  • Para project_short_description escriba My first project with BotCity y presiona enter.

Info

Puede encontrar más información sobre los tipos y opciones de proyecto en el proyecto de plantilla sitio web de documentación.

Después de realizar el proceso anterior, ahora tendrá una nueva carpeta llamada HelloWebBot.

Success

Felicitaciones, ahora tiene un proyecto con el framework Python de BotCity. 🏆

Echemos un vistazo más profundo a ello.

Explorando el proyecto

Debajo de la carpeta de su proyecto HelloWebBot tendrá la siguiente estructura:

HelloWebBot
├── MANIFEST.in      <- Este archivo define el contenido del paquete.
├── README.md        <- Archivo README simple para tu proyecto de bot.
├── VERSION          <- Este archivo define la versión del paquete Bot.
├── HelloWebBot         <- Módulo principal para tu paquete Bot.
│   ├── __init__.py
│   ├── __main__.py  <- Punto de entrada para el módulo. No es necesario preocuparse por este archivo.
│   ├── bot.py       <- Aquí es donde desarrollarás el código de tu bot.
│   └── resources    <- Carpeta que contiene recursos útiles para el bot.
├── build.bat        <- Script por lotes para generar el paquete
├── build.sh         <- Script de shell para generar el paquete
├── requirements.txt <- Archivo que describe las dependencias de Python para tu bot.
└── setup.py         <- Archivo de configuración para el paquete.

Note

Puede que parezcan muchos archivos y carpetas, pero estos son los más importantes:

  • bot.py: Cambia este archivo y agrega aquí el código de tu bot.
  • resources: agregue a esta carpeta los archivos que se usarán con su bot, como imágenes, hojas de cálculo, etc.
  • VERSIÓN: Cambia el contenido de este archivo al actualizar la versión de tu bot. Se recomienda utilizar versiones en formato X.Y. P.ej. 1,0, 1,1, 2,5, 3,10.

Excelente!

Toda esta información es excelente, pero es hora de ver algo de acción.

Probemos este nuevo y brillante Bot localmente. 🦾🤖

Configuración de la ruta del WebDriver

Como se mencionó anteriormente, para poder utilizar las funciones del framework web, es necesario configurar la ruta del WebDriver del navegador que estemos utilizando. Si no tiene la ruta de WebDriver agregada a su PATH, puede agregar manualmente la ruta en su código de bot, a través de la propiedad driver_path.

...
class Bot(WebBot):
    def action(self, execution=None):
        # Configura si se ejecuta en modo sin cabeza o no
        self.headless = False

        # Cambia el navegador predeterminado a Firefox
        self.browser = Browser.FIREFOX

        # Establece la ruta del controlador de Firefox
        self.driver_path = "<ruta a tu binario del controlador>"

        # Abre el sitio web de BotCity.
        self.browse("https://www.botcity.dev")
...

Info

Chrome está configurado como navegador predeterminado. Para cambiar el navegador predeterminado, simplemente seleccione otra opción a través de la clase Browser.

Probar su proyecto localmente

Para probar nuestro proyecto localmente, primero instalémoslo para que podamos tener todas las dependencias de Python listas.

Usando la herramienta de línea de comandos, acceda a la carpeta HelloWebBot que describimos anteriormente.

Instalación del proyecto

Desde esta carpeta ejecute el siguiente comando para instalar su proyecto en modo de desarrollo:

pip install -e .

Pro Tip

La instalación usando el indicador de modo de desarrollo -e hace que podamos seguir desarrollando y ejecutando nuestro Bot sin la necesidad de reinstalarlo.

Este comando producirá una gran cantidad de resultados, lo que significa que se están instalando todas las dependencias como botcity-framework-web y otras.

Una vez finalizado este proceso, debería ver un resultado similar a este:

<... otro resultado de la instalación ...>
  Running setup.py develop for HelloWebBot
Successfully installed HelloWebBot-1.0 ...

El mensaje importante aquí es el Successfuly installed HelloWebBot-1.0.

Esto significa que su proyecto ya está listo para ser ejecutado.

Ejecutando el robot

Nuestro proyecto de plantilla ejecuta una automatización muy simple. Abre el navegador web que has configurado y carga el sitio web de BotCity.

Puedes ejecutar tu HelloWebBot con el siguiente comando:

python -m HelloWebBot

Aquí tienes una captura de pantalla del resultado esperado: Resultado web de Python

🌟 Excelente 🌟

Ahora estás listo para comenzar a crear automatizaciones utilizando el framework Web de Python de BotCity.

Conclusión

En este tutorial aprendiste:

  • Las dependencias necesarias para desarrollar automatizaciones utilizando el framework Web de Python de BotCity y cómo instalarlas.

  • Cómo crear nuevos proyectos WebBot utilizando cookiecutter y la plantilla de BotCity.

  • Cómo instalar y ejecutar tu nuevo proyecto WebBot localmente.

Diviértete automatizando 🤖

Siguientes pasos

Ahora es el momento de cargar tu proyecto con BotCity Studio y comenzar a crear tus automatizaciones con Visión por Computadora y toda la productividad que ofrece nuestra herramienta.