Automatización Inteligente con Python
Automatización Inteligente con Python
Robotic
Process Inteligencia
Automation Artificial (AI)
(RPA) Intelligent Process
Automation
(IPA)
Automatización de tareas basadas en Algoritmos que permiten aprender
Tecnología para replicar y automatizar
automáticamente de los datos
tareas basadas en reglas decisiones inteligentes
- Mayor eficiencia Aprendizaje Supervisado permite realizar
Eficiencia en procesos repetitivos y - Mayor reducción de costes predicciones en base a nuevos datos de entrada
reducción de riesgos por fallo humano - Incrementar la calidad de los
Aprendizaje NO Supervisado permite identificar
procesos patrones
© Iván Pinar Domínguez - Aumento de la agilidad
1.2 Selección de procesos IPA
Objetivo: Automatizar procesos repetitivos aportando capacidad de decisión mediante
Inteligencia Artificial
Proceso Proceso
Automático 1 Automático 3
IPA Inicio
Fin
Proceso
Automático 2
Inteligencia Artificial
Facilidad de uso
IPA
Librerías de Rapidez de
automatización ejecución
disponibles
© Iván Pinar Domínguez
1.3 Plataformas en IPA - ¿Por qué Python?
Producto licenciado
Gratis (Open Source) aunque
Coste (orquestador + UiPath Studio +
mayor coste de desarrollo
Robot ~40k€)
Control plataforma
Posibilidad
IPA (RPA + IA)
© Iván Pinar Domínguez
1.4 Instalación Python + Jupyter
• ANACONDA: Distribución de Python con múltiples librerías pre-instaladas para Data
Science.
[Link]
• Panel de Control> system > advanced > |Variables de Entorno| > system variables
© Iván Pinar Domínguez Añadir a la variable PATH la ruta concreta con “;”
1.4 Instalación Python + Jupyter
Ventas diarias
Automatización
Lectura Ficheros Inserción de todas las
ventas diarias en CRM [Link]
Administrativo Automatización
Inserción Web
Automatización
Lectura Email
Comerciales
• Creación
Posición: 0 , 1 , 2 , 3 , 4 , 5
Posición: -6 , -5 , -4 , -3 , -2 , -1
• EJERCICIO: Seleccionar en la lista
dimensiones desde 2º valor hasta el
penúltimo
x y
2
58
• ¿Cómo añadir elementos en una lista?
6
Nombre_funcion(arg_1, arg_2,…)
Arg_1
Nombre_funcion() Resultado
Arg_2
Lógica docstring
• Función map: map(func, secuencia): Aplica la • EJERCICIO: Crear función lambda que
función a todos los elementos de una secuencia convierta de $ a € una lista de precios
(una lista, una columna de un dataframe,…) en $ (asumir que 1€ = 1,1$)
• Ejemplo (Elevar una lista de números al cuadrado)
Capitalize()
str
Replace(cad_ini
,cad_fin)
list Insert(pos,valor)
clave
valor
• ¿Podemos añadir condiciones? (Ejemplo • EJERCICIO: Crear lista que eleve al cuadrado
sumar 5 solo si el números es menor que 5) los valores pares de la lista (condiciones para
evaluar si es par: num % 2 == 0)
Cargar pestaña
del libro
Obtener el valor
de una celda
DISTRITO Población_Distrito
Arganzuela 151965
Centro 149718
Chamberí 137401
Moncloa-Aravaca 116903
Latina 233808
Escribir en una celda
Crear una
pestaña nueva
Importar de un CSV
df = pd.read_csv(r'[Link]', delimiter=“;“, encoding = "ISO-8859-1“, index_col = 0, nrows=5, header=None)
*Argumentos obligatorios
*Argumentos opcionales Defecto: “,” Defecto: None Defecto: All Defecto: 0
Importar de Excel
df = pd.read_excel(r'[Link]‘, sheet_name = “nombre_pestaña”)
Tablas de datos
df_pais
Exportar a Excel
df.to_excel(r‘ruta_local/nombre_fichero.xlsx‘, ,sheet_name = nombre_pestaña)
Leer párrafos
Poner en negrita
Modificar texto
2. 3. Guardar 4. Reconocimiento
Transformación imágenes en de texto OCR
1. Instalación pdf a imagen ruta temporal
Pedidos Tesseract/Poppler
• Realizamos el reconocimiento
• Tesseract: • Cada página de texto de cada imagen con
[Link] del fichero pdf el motor OCR Tesseract y lo
Mannheim/tesseract/wiki/ se transformará guardamos en un fichero de
• Poppler: a una imagen salida en formato texto
[Link]
u/poppler-windows/
• Definir en variable entorno
© Iván Pinar Domínguez
Cómo organizar automáticamente los ficheros en directorios
• Librería: import os / import shutil
Ventas diarias
Automatización
Lectura Ficheros Inserción de todas las
ventas diarias en CRM [Link]
Administrativo
HTTP
• ¿Cómo importamos un recurso web a partir de una URL?
GET
[Link]
• SOLUCIÓN: Web scraping con BeautifulSoup <div id=“gráfico 1”> <div id=“gráfico 2”>
Ventas diarias
Automatización
Lectura Ficheros Inserción de todas las
ventas diarias en CRM [Link]
Administrativo Automatización
Inserción Web
Comerciales
[Link]
Loguearse [Link](“email",“password")
Ventas diarias
Automatización
Lectura Ficheros Inserción de todas las
ventas diarias en CRM [Link]
Administrativo Automatización
Inserción Web
Automatización
Lectura Email
Comerciales
Posición (0,0)
1 2 3
Optimizar parámetros
modelo seleccionado Benchmarking selección
mejor algoritmo
6 5 4
Ventas diarias
Automatización
Lectura Ficheros Inserción de todas las
ventas diarias en CRM [Link]
Administrativo Automatización
Inserción Web
Automatización
Lectura Email
Comerciales
Máquina local
Servidor on-premises
Instalar librerías
Fichero [Link]
• [Link]
• [Link]
Generar fichero requirements:
script-or-bot-to-heroku-in-5-minutes-a82de2d3ed40
1. Abrir cmd • [Link]
2. Ir a carpeta del entorno Python con el comando cd
3. Ejecutar: pip freeze > [Link]
• [Link]
© Iván Pinar Domínguez Aplicación Windows (.exe) app-on-aws-57ed772b2319
Generación de scripts python y ejecución
Generación Notebook
Jupiter
Ejecución script en
local o servidor remoto
2. Descargar [Link]
6. Seleccionar [Link]
• Python es un lenguaje ideal para aplica IPA debido a que dispone de potentes librerías
enfocadas en la automatización de procesos e IA.
• Python ofrece una alta versatilidad a la hora de desplegar las soluciones IPA (local,
servidor, cloud,…)
© Iván Pinar Domínguez
Gracias









