You don't have access to this class

Keep learning! Join and start boosting your career

Aprovecha el precio especial y haz tu profesión a prueba de IA

Antes: $249

Currency
$209
Suscríbete

Termina en:

0 Días
7 Hrs
39 Min
11 Seg

Automatización y scripting

9/25
Resources

Contributions 46

Questions 1

Sort by:

Want to see more contributions, questions and answers from the community?

Tengo una tarea que se trata de hacer unas presentaciones de power point, despues de varias veces perdiendo horas colocando imagenes y titulos, decidi automatizar esta tarea usando python. Ahora solo colecto las imagenes y mediante pandas, openpyxl y python-pptx he logrado sacar el ppt en solo 2 minutos. Aprendizaje: Elimina todo TASK que sea manual lo mas posible!!

Les recomiendo el libro ‘Automating the boring stuff with Python’

Una tarea cotidiana en mi caso era ordenar por extensión todos los archivos que descargaba en el directorio Downloads; para ahorrarme tiempo lo automaticé con Python y puedes usar el script acá.
Si tu OS lo permite, automatizar la ejecución de este script con Crontab es el objetivo con el que lo desarrollé; de lo contrario puedes solo guardarlo como un alias y ejecutarlo directamente cuando lo necesites ~

Resumen:

  • Porque debo automatizar las tareas?
    • Para trabajar de manera inteligente
    • Optimizar el proceso
    • Utilizar recursos externos
  • Porque debo usar python?
    • Porque es un lenguaje sencillo
    • Librerias variadas
    • Comunidad activa
    • Multiplataforma
  • Cuando debemos automatizar una tarea?

Cuando se aplique la regla Beetlejuice, que quiere decir que despues de repetir 3 veces la tarea, tendras mas claro lo que vas a automatizar y porque

Es super importante evaluar el proceso antes de tirarse a la loca a automatizar, sí, muchas tareas en un proceso de data conllevan la automatización, pero debes evaluar el cómo la vas a implementar, para que la vas a implementar que técnicas de diseño puedes llegar a usar. Nuevamente, como ingeniera es muy importante que pienses en la escalabilidad y el mantenimiento de estos sistemas.

Una tarea repetitiva que hacía en mi trabajo era extraer información mensual de unos envíos que se deben hacer: a qué personas, qué producto se iba a enviar, los datos de envío, etc. Todo era manual: descargar la data, copiarla en un Sheet, limpiarla, generar etiquetas de envío del paquete, etc. Considero que puede mejorarse con Python, es todo un reto pero es posible.

Yo tenia que dibujar unos planos de alcantarrillado y acueducto que me llevaba mucho tiempo , pero ahora mediante el uso de una liberia de python llamada pyautocad, este proceso se realiza de manera automatica.

Soy inexperto en la programación, pero en este caso me gustaria mucho automatizar una nomina que hago semanal de forma manual que me quita 2 horas, dependiendo, tomo la información de una pagina web llamada Jobber y de alli copio y pego los datos a google shets donde esta la nomina.
La informacion es la fecha - nombre del cliente - el monto - hora de inicio - hora de salida- el tiempo que se tomo el tech en limpiar la casa - si es 1 persona se gana el 45% del monto total si es 2 personas se gana el 22.5% y si son 3 se gana el 15% pero tambien depende de si un miembro del equipo esta en entrenamiento por lo tanto no afectaria el porcentaje - si son 2 personas y una persona en entrenamiento serian 22.5 y asi. Las tips y el monto generado por cada visita. El monto a ganar por cada visita lo determina el porcentaje mas no el tiempo que tarde en cada casa.
El tiempo que tarde en cada casa es informativo, pero si se usa para saber cuanto gano cada tech por hora. Cuando aprenda sobre programacion y automatizacion creo que la nomina se haria sola cada semana, claro despues de unos minutos limpiando la información. A los compañeros expertos? Esto se podria automatizar?

Mi resumen de la clase:

La automatización nos ayuda a aprovechar el poder de un lenguaje de programación nos ayuda a tomar tareas repetitivas de manera consistente para trabajar de manera inteligente, optimizar procesos y utilizar recursos externos. Python es muy bueno para esto ya que tiene un lenguaje sencillo, librerías variadas, comunidad activa para llegar aprovechar cosas que otros han hecho y es multiplataforma.

Modificar y limpiar de manera masiva, cuidado de automatizar cosas que no sean repetitivas y automatizar antes de tiempo. La regla Beetlejuice el solo aparece cuando repites su nombre tres veces, cuando hagas cosas a la tercera vez ahí comprenderás que tanto se puede automatizar.

La automatización de los dashboards de datos es FUNDAMENTAL en toda organización data-driven. Tener que actualizar los datos de una forma manual es algo SUMAMENTE TEDIOSO y no aporta NADA hacerlo manualmente.

9. Automatización y scripting

Automatizar las tareas

  • Repetir una tarea
  • Trabajar de manera inteligente
  • Optimizar el proceso
  • Utilizar recursos externos

¿Por qué Python?

  • Lenguaje sencillo
  • Librerías variadas
  • Comunidad activa
  • Multiplataforma
  • Generar y copiar archivos. Descargar una fuente de datos externa.
  • Modificaciones masivas. Editar y limpiar conjuntos de datos.

Cuidado

  • Automatizar cosas que no sean repetitivas.
  • Automatizar antes de tiempo.

Confirmo. Estuve haciendo extracción, Transformación y Carga de series de datos en mi trabajo durante nueve meses usando microsoft Excel. Hacer el proceso de ETL con cada una de estas series me llevaba aproximadamente 1.5-2 horas. Cuando me decidí a llevar todo este proceso a Python (mediante Jupyter Notebooks en ambientes virtuales Conda, en WSL2), me di cuenta que sólo tomaba 30 segundos en hacerlo!

Créanme que vale la pena. Puedes demorarte hasta 1 semana construyendo tu notebook, y siempre te vas a fijar en que lo puedes ir mejorando. Pero el tiempo que se ahorra automaizando es absolutamente increíble!

Tengo varios Dashboards de Power Bi que se alimentan de BD que toca estar actualizando manualmente, seria bueno empezar a pensar con automatizar la actualizacion de esos origenes a través de Python.

Veo la automatización en dos frentes, tanto como crear desde cero un sistema para cubrir una necesidad repetitiva así como el saber usar herramientas existentes para este fin. Un ejemplo de lo segundo sería mi trabajo actual donde trabajo mucho por correo y diría que el 85% de lo que tengo que responder son plantillas que me proveyó la empresa, después de las primeras semanas y ver lo repetitivo que era este decidí optar por usar un sistema de shortcuts, uno llamado Texter donde guardo el template y decido un comando con las teclas donde cada vez que escribo y ejecuto este comando con la letra shift despliega automaticamente el template en el cuerpo del email lo que me ha ayudado a mejorar mis metricas con respecto a mis compañeros, tanto tiempo de respuesta como cantidad, ya que lo que un compañero tarda en buscar/editar un template por tiquete, yo envio hasta 3.

En este Proyecto

He hecho una automatización en Python con un Script, que a su vez, parece un poco largo, pero su ejecución es práctica, ya que me permite descargar distintos archivos zip, descargar los archivos csv y unir todo en un solo conjunto de datos.

Bueno, todo esto me llevo a que podría hacer mejor la tarea con Apache Spark y Pyspark. Saludos

Una parte del código:

def download_file(url, filename):
    response = requests.get(url)
    with open(filename, 'wb') as f:
        f.write(response.content)

urls = [Aquí es una lista con 12 conjuntos de datos correspondientes a cada mes]

for url in urls:
  filename = url.split('/')[-1]
  download_file(url, filename)

# Extraer el archivo CSV del archivo ZIP
with zipfile.ZipFile('/kaggle/working/202201-divvy-tripdata.zip', 'r') as zip_ref:
    csv_file = zip_ref.namelist()[0]  # obtener el nombre del archivo CSV
    zip_ref.extract(csv_file)

# Leer el archivo CSV extraído en un DataFrame de Pandas
ene_22 = pd.read_csv(csv_file)

# Repetir el proceso para los demás meses de Enero a Dic
data = pd.concat([ene_22, feb_22, mar_22, abr_22, may_22, jun_22, jul_22, ago_22, sep_22, oct_22, nov_22, dic_22])
print(f'Ahora nuestro conjunto de datos contiene {data.shape[0]} filas y {data.shape[1]} columnas')

>> Ahora nuestro conjunto de datos contiene 5667717 filas y 13 columnas

Soy inexperta en programación, pero algo que podría ser muy útil para automatizar seria la alimentación de mi familia ya que debido al trabajamos diariamente manejo ya una determinada cantidad y tipo de alimentos así como, los tiempos del mes en los cuales se compran, por ende, y ya sabiendo los diferentes platillos que se pueden preparar para desayunos, almuerzos, comida y lonchera de mi hijo se podrían extraer menús diferentes para cada día del mes reduciendo el tiempo para el desarrollo de esta tarea. Gracias por su atención.

Podría automatizar las siguientes tareas:

  • Descargar el resumen de la tarjeta de crédito y procesar los rubros de gastos,
  • pagar alquiler y expensas y notificar a quienes corresponda…
En mi caso trabaje un tiempo en una tienda de barrio y repetían semanalmente el proceso de ver cuantas ventas se habían echo de forma manual en vez de tener alguna aplicación o formato en el cual hiciera el registro y una estadística final de cada producto vendido.
Tareas: * Un proceso de descarga de planillas de servicios de salud de cada paciente, se descargaban desde un excel que filtraba datos de los servicios que se realizó, con un macro VBA en excel rápidamente se generaban las planillas en pdf solo dando click a un botón. Es lo más cercano que he hecho a automatizar, por ahora:)
**Automatización y scripting**: **Automatización**: * Consiste en crear procesos que se ejecuten automáticamente para realizar tareas repetitivas o largas, sin intervención manual, mejorando la eficiencia, reduciendo errores y optimizando tiempos. **Scripting**: * Es el proceso de escribir y ejecutar scripts, que son pequeños programas o instrucciones codificadas en lenguaje de programación para automatizar tareas específicas, como manipular archivos, realizar consultas en bases de datos, ejecutar procesos de ETL (Extract, Transform, Load), entre otros. ### **Principales beneficios de la automatización y scripting**: 1. **Ahorro de tiempo**: Automatizar tareas repetitivas libera tiempo para que los desarrolladores y analistas se concentren en tareas más estratégicas o creativas. 2. **Reducción de errores**: Al ejecutar procesos automáticamente, el riesgo de errores humanos se minimiza, garantizando resultados consistentes. 3. **Escalabilidad**: Permite ejecutar operaciones en múltiples datos o entornos a la vez, facilitando el manejo de grandes volúmenes de información. 4. **Mejora de la eficiencia**: Al automatizar procesos, se logran ejecutar tareas con mayor rapidez y sin intervención manual constante. 5. **Optimización de recursos**: Automatizar tareas ayuda a optimizar el uso de recursos, como CPU, memoria o capacidad de almacenamiento. ### **Herramientas y tecnologías comunes para automatización y scripting**: * **Bash Scripting**: Utilizado en sistemas Unix/Linux para realizar tareas desde la terminal. * **PowerShell**: Lenguaje de scripting de Windows muy útil para automatizar operaciones en sistemas de Microsoft. * **Python**: Amplia utilidad en la automatización de tareas, manejo de datos, integración con APIs, creación de pipelines, y scripting avanzado. * **Ansible, Puppet, Chef**: Herramientas para la automatización de configuraciones y gestión de infraestructuras. * **Apache Airflow**: Plataforma para la automatización de flujos de trabajo de datos (DataOps), para programar y supervisar pipelines. **Automatización y scripting son esenciales para optimizar y facilitar la gestión eficiente de tareas en proyectos de desarrollo y datos.**
En el mundo de la ingeniería de datos, la automatización es una aliada poderosa que nos ayuda a optimizar tanto nuestro trabajo como nuestra vida personal. La clave está en identificar aquellas actividades repetitivas que, una vez automatizadas, nos permitan enfocarnos en aspectos más estratégicos y creativos. Sin embargo, es crucial entender bien cada proceso antes de automatizarlo, ya sea profesional o personal. Tareas profesionales que podemos automatizar: * Limpieza diaria de datos * Generación y envío de reportes * Respaldos de bases de datos * Actualizaciones de dashboards * Alertas sobre anomalías en datos Tareas personales cotidianas automatizables: * Pagos recurrentes (servicios, suscripciones) * Recordatorios de medicamentos o vitaminas * Lista de compras del supermercado * Programación de ejercicios * Organización de agenda y calendarios * Rutinas de limpieza del hogar * Pedidos regulares (agua, despensa) * Ahorro automático mensual * Respaldos de fotos del celular * Filtrado de correos no deseados Estas automatizaciones, tanto profesionales como personales, nos permiten invertir más tiempo en actividades que requieren nuestra atención directa y toma de decisiones importantes.
Trabajo en una empresa de marketing y ocasionalmente tengo una tarea de obtener un reporte de 2 informes. Antes haciamos todo a mano, filtrando, limpiando, etc. En python disenie una API que se conecta con My Affiliates para descargar esos dos informes (que se descargan en CSV), analizarlos, filtrarlos a las necesidades, darle formato y descargar un solo informe en Excel a partir de un parametro. hace poco, ese script funciono tanto que ahorramos unas 6 horas de trabajo descargando los informes en tan solo 1 minuto.
Automatizar la forma en la que hago resúmenes
Hace algunos años trabaje en una empresa pequeña, y una de mis labores era transcribir la información de los clientes, no era tan extensa, como 150 clientes, pero de cada cliente habían como 8 o 7 datos, recuerdo que era una plataforma muy mal optimizada, creo que su nombre era como "azana", en fin, aun desconozco como hacerlo, pero creo que se podría automatizar y hubiera tomado muchísimo menos tiempo, los hicimos entre 3 compañeros y nos tomo mas de un mes.
En el correo de la empresa tenia la automatizacion de distribuir los correos de diferentes de departamentos por carpetas, de esta forma la bandeja principal tenia pocos correos, y al momento de buscar un correo espeficico me dijiria a la carpeta correspondiente, de esta forma ahorraba tiempo. Y en lo personal con la app de calendarios en mi celular, cualquier evento queda guardado, con una notificacion semanas antes y asi no estaria buscando diariamente si tengo algo importante ese dia
Actualmente en mi trabajo realizo limpieza de datos de usuarios validando correos y numeros de telefonos, me gustaria realizar una automatización para la limpieza de estos datos, el proceso es recurrente cada que se tiene un lote de usuarios se realiza esta limpieza
Bettlejuice, Bettlejuice, Bettlejuice 😂😂😂😂
En realidad para mi el día a día es repetitivo ya que me desempeño como Tester funcional, y las regresiones son repetitivas, por eso creo que ahí la automatización me ayudaría muchísimo.
Complicado, soy pesimo automatizando, creo mi problema es que muchas veces automatizar un proceso es matar una hormiga con una granada, y creo me cuesta verlo diferente, es decir el crear la automatizacion me tarda mas de lo que realmente es el proceso, es algo que me cuesta, sin embargo entiendo el punto. Creo de mi dia a dia buscaria automatizar la eliminacion de spam de mis correos

Gracias

En mi trabajo, al final de cada sprint tenemos que borrar manualmente todos los schemas que correspondan a ramas feature y que hayan sido utilizadas exclusivamente para desarrollar y hacer pruebas previo al pasaje a test y producción. Quiero automatizar esta tarea, y se que es posible ya que los nombres de los schemas tienen un prefijo identificatorio que indican que son los schemas de una tarea X.
Hasta el momento me encuentro aprendiendo, así que no tengo tareas que automatizar
Datos qué pasó a google sheets los limpio siempre de la misma forma y alimentan un reporte en datastudio… ansiosa por aprender a automatizar esta tarea. La herramienta de la que extraigo los datos tiene API disponible y podría aprender con este curso a utilizarlas para automatizar esta extracción y limpieza de datos y dejarlos disponibles para reporting.
Hice mi tesis de grado con redes convolucionales para clasificación de ácaros en rosa sp para renombrar Miles de imágenes use un simple script en python 😁😁

En mi caso yo uso una pltaforma para conseguir trabajo la cual me envia notificaciones a mi computadora, la automatizacion que haria serai que cada vez que llegue ese mensaje abra el mensaje en una pestana de mi browser para poder responder a la posible solicitud

El caso en viable de hacer por que despues de que sale esa notificacion es imposible volver a encontrar la solicitud en la pagina

Aún no identifico tareas que sean "iguales" para automatizar; para un poco más de contexto hasta ahora estoy empezando a trabajar.

La automatización nos lleva a evolucionar procesos , en mi caso con una planta de producción que fabrica sistemas de frenos para vehiculos automatizar tareas nos lleva a dar respuesta rápida y eficiente a los almacenes quienes finalmente entregan el producto, nos permite también controlar el proceso desde etapas tempranas para evitar rechazo.

Con chatGPT hice un script que me crea una carpeta de la clase y me mueve las capturas ah esa carpeta. Le saco capturas a los aportas o los slides,. Tambien crear un .txt con el titulo de la clase. Aguante chatgpt

Buena explicacion.

Buscar un podcast que escucho diario, podría automatizar la manera de reporducirlo sin necesidad de estar entrando a la app y buscar el podcast

Actualmente trabajo en una empresa distribnuidora de energia, y los pulsos de los clientes que son quinceminutales es una información que debemos manejar y es un volumen tremendo de datos a tratar.

Hace rato que quiero automatizar la descarga de los videos asociados a unos links de un pdf.

Llevo varios tratando de automatizar un proceso…algún día lo lograré, pero lo poco que levo me ha ayudado mucho.

Yendo a tareas no laborales, como tarea de rutina diaria cuando estudio automatizaría que cuando enciendo mi pc, se abra de inmediato la web del curso y clase en el que estoy estudiando, y las herramientas que use.
Y como tarea laboral me gustaría poder automatizar filtrando las búsquedas de Data Engineer con un scraper desde distintos orígenes (que lo pienso desarrollar cuando vaya realizando los cursos del tema)

En mi trabajo reviso muchos datos, descarto valores animales, un script me serviría demasiado