diff --git a/download_sharepoint.py b/download_sharepoint.py index ca2c3ba..47e59ed 100644 --- a/download_sharepoint.py +++ b/download_sharepoint.py @@ -152,9 +152,24 @@ def get_site_id(app, site_url): def get_drive_id(app, site_id, drive_name): url = f"https://graph.microsoft.com/v1.0/sites/{site_id}/drives" response = safe_get(url, headers=get_headers(app)) - for drive in response.json().get('value', []): - if drive['name'] == drive_name: return drive['id'] - raise Exception(f"Drive {drive_name} not found") + drives = response.json().get('value', []) + + # Prøv præcis match + for drive in drives: + if drive['name'] == drive_name: + return drive['id'] + + # Prøv fallback til "Documents" hvis "Delte dokumenter" fejler (SharePoint standard) + if drive_name == "Delte dokumenter": + for drive in drives: + if drive['name'] == "Documents": + logger.info("Found 'Documents' as fallback for 'Delte dokumenter'") + return drive['id'] + + # Log tilgængelige navne for at hjælpe brugeren + available_names = [d['name'] for d in drives] + logger.error(f"Drive '{drive_name}' not found. Available drives on this site: {available_names}") + raise Exception(f"Drive {drive_name} not found. Check the log for available drive names.") # --- Punkt 2: Resume / Chunked Download logic --- def get_fresh_download_url(app, drive_id, item_id):