Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -89,14 +89,15 @@ class URLProcessor:
|
|
89 |
logger.error(f"Content fetch failed: {e}")
|
90 |
return None
|
91 |
|
92 |
-
|
93 |
"""Process Google Drive file links"""
|
94 |
try:
|
95 |
file_id = re.search(r'/file/d/([a-zA-Z0-9_-]+)', url)
|
96 |
if not file_id:
|
97 |
logger.error(f"Invalid Google Drive URL: {url}")
|
98 |
return None
|
99 |
-
|
|
|
100 |
response = self.session.get(direct_url, timeout=self.timeout)
|
101 |
response.raise_for_status()
|
102 |
|
@@ -108,7 +109,7 @@ class URLProcessor:
|
|
108 |
except Exception as e:
|
109 |
logger.error(f"Google Drive processing failed: {e}")
|
110 |
return None
|
111 |
-
|
112 |
def _handle_google_calendar(self, url: str) -> Optional[Dict]:
|
113 |
"""Process Google Calendar ICS feeds"""
|
114 |
try:
|
|
|
89 |
logger.error(f"Content fetch failed: {e}")
|
90 |
return None
|
91 |
|
92 |
+
def _handle_google_drive(self, url: str) -> Optional[Dict]:
|
93 |
"""Process Google Drive file links"""
|
94 |
try:
|
95 |
file_id = re.search(r'/file/d/([a-zA-Z0-9_-]+)', url)
|
96 |
if not file_id:
|
97 |
logger.error(f"Invalid Google Drive URL: {url}")
|
98 |
return None
|
99 |
+
|
100 |
+
direct_url = f"https://drive.google.com/uc?export=download&id={file_id.group(1)}"
|
101 |
response = self.session.get(direct_url, timeout=self.timeout)
|
102 |
response.raise_for_status()
|
103 |
|
|
|
109 |
except Exception as e:
|
110 |
logger.error(f"Google Drive processing failed: {e}")
|
111 |
return None
|
112 |
+
|
113 |
def _handle_google_calendar(self, url: str) -> Optional[Dict]:
|
114 |
"""Process Google Calendar ICS feeds"""
|
115 |
try:
|