The script ("downloadPDF.py"), when run correctly, consist of 4 parts: -Step 1: Extracting "BRnum", "link 1" and "link 2" from every row in a excel sheet "GRI_2017_2020 (1).xlsx" and appeneding them ...
Threaded execution (UI remains responsive). Rate limiting and exponential backoff. Image validation (Pillow) and conversion to JPEG. Disk caching to avoid redundant ...