From 1cbeb55463abc2ab6ffa236e5cad07f56de81ed6 Mon Sep 17 00:00:00 2001 From: Jarian Cottingham Date: Sat, 31 Jan 2026 11:53:32 -0600 Subject: [PATCH] Fix filename sanitization to resolve Linux permission denied errors --- scraper/scraper.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/scraper/scraper.py b/scraper/scraper.py index 5116e67..d268a30 100644 --- a/scraper/scraper.py +++ b/scraper/scraper.py @@ -143,7 +143,11 @@ def generate_filename_from_url(url): Generates a filename from the given URL by replacing slashes with underscores. """ # Use only the last part of the URL or replace slashes - return url.replace("https://", "").replace("http://", "").replace("/", "_") + filename = url.replace("https://", "").replace("http://", "").replace("/", "_") + # Sanitize filename to remove/replace invalid characters + import re + filename = re.sub(r'[\\/*?:"<>|]', "_", filename) + return filename def generate_safe_filename(name):