lopotras / WoltPartner-Schedule

A little help to get the Wolt shifts you want
2 stars 1 forks source link
wolt wolt-shifts

WoltPartner-Schedule

A little help to get the Wolt shifts you want.

The script uses GUI automation to try and book chosen shifts in the Wolt Courier Partner app opened in BlueStacks 4.

This is a project I developed while working with Wolt as a courier to facilitate scheduling the shifs. The code generator was created as an excersise after finishing the JavaScript course on Ivan on Tech Blockchain Academy.

PREREQUISITS

Note: The installation process is for Windows 10. In case of a different OS it may slightly differ.

  1. Download and install python and required modules. To do that you can use miniconda (link). After installing it open Anaconda Prompt and type and confirm the following commands:

    conda install pywin32

    conda install -c conda-forge pyautogui

  2. Download and install BlueStacks 4 (link).

  3. Once inside BlueStacks go to Google Play Store. Find and download the Wolt Courier Partner app. Open and log-in to the app. Wolt Courier Partner needs to run in white theme (default).

USER MANUAL

  1. Download and extract the files (pic).
  2. Open BlueStacks and log-in to the Wolt Courier Partner app.
  3. In Wolt Courier Partner open the menu (top left corner of the screen) and go to Scheduled hours -> Aarhus Central (or the city you are delivering in, pic).
  4. Make sure that the display resolution is set to 1600x900 (pic).
  5. Autoalign BlueStacks (pic).
  6. Open codeGenerator.html and choose the shift slots you want to book (1). Copy the code (2, pic).
  7. Open woltPartnerBooking.py in a text editor. Delete all contents. Paste the code in the empty file and save (pic).
  8. Run woltPartnerBooking.py through Open with... -> python. You can find python.exe in the miniconda installation directory (pic).
  9. After running he scrip try not to move the mouse as the program uses the cursor to interact with WoltPartner App.

WHAT TO EXPECT

You can expect the script to serve as an extra person while booking your shifts. It proves useful for not having to wait on the phone for the new shifts to arrive, while refreshing constantly. You can just run it earlier and go have fun.

If you are aiming for the shifts that are booked very quickly you may experience errors during booking (similarly as during manual booking).

ADVANCED TIPS

  1. If you run the program between Thursday 03:00pm and Friday 08:00am the script will wait for 08:00am to start. Otherwise it will start booking at 03:00pm.
  2. You can tweak with the starting time by exchanging f.autoStart() with f.startAt(hh,mm,ss). Note: In f.startAt(hh,mm,ss) mm and ss default to 0. Single digit agruments should not be padded with 0's (example: if you want to start at 15:01:00 the arguments should be: f.startAt(15,1)).

    Good luck and enjoy the ride!