Skip to content

This repo provides a production-ready Python solution to the RPA Challenge.

Notifications You must be signed in to change notification settings

bkocsis3/rpa-challenge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RPA Challenge

📖 Overview

The goal of this project is to provide a production-ready Python solution that:

  1. Solves the RPA Challenge, a popular benchmark for RPA developers. This task involves extracting data from an Excel file and entering it into a web form with randomly placed fields - ten times.
  2. Is Docker-ready, allowing the solution to run easily across environments.
  3. Supports both headed mode (for visual debugging) and headless mode (for fast, efficient execution).

** This was created on Windows, so some commands are Windows specific.


🐳 If You're Using Docker

⚙️ Setup

  1. Download Docker if needed: https://www.docker.com/products/docker-desktop/
  2. Download a VNC viewer if needed. I used Remote Ripple: https://remoteripple.com/download/
  3. Open Command Prompt
  4. Navigate to Downloads:
    cd %USERPROFILE%\Downloads
  5. Clone the repository:
    git clone https://github.com/bkocsis3/rpa-challenge.git
  6. Change into the repo folder:
    cd rpa-challenge
  7. Build a Docker image using the repo Dockerfile:
    docker build -t rpa-challenge .

🏃Running the Solution in headed mode (for visual debugging)

  1. Run the new image to create a container:
    docker run -d -p 5900:5900 --name rpa-challenge-con rpa-challenge
  2. Using your VNC viewer, connect to the new container using localhost:5900 & 'secret' as the password
  3. Execute the Python solution
    docker exec rpa-challenge-con python rpa-challenge.py --headtype=headed
  4. Watch the automation in your VNC viewer

🏃Running the Solution in headless mode (for fast, efficient execution)

  • Default command
    docker run --name rpa-challenge-con python rpa-challenge.py

or

  • Explicit command
    docker run --name rpa-challenge-con python rpa-challenge.py --headtype=headless

🐍 If you're using Python

⚙️ Setup

  1. Download Python if needed: https://www.python.org/downloads/

  2. Open Command Prompt

  3. Navigate to Downloads:

    cd %USERPROFILE%\Downloads
  4. Create a virtual environment:

    py -m venv rpa-challenge-venv
  5. Activate the virtual environment:

    rpa-challenge-venv\Scripts\activate.bat
  6. Install dependancies:

    pip install pandas requests selenium openpyxl

🏃Running the Solution in headed mode (for visual debugging)

    py rpa-challenge.py --headtype=headed

🏃Running the Solution in headless mode (for fast, efficient execution)

  • Default command
    py rpa-challenge.py
    or
  • Explicit command
    py rpa-challenge.py --headtype=headless

💡Improvement Ideas

  • Add error handling to the Python solution
  • Add a way to set a new VNC password for better security

About

This repo provides a production-ready Python solution to the RPA Challenge.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published