Spaces:
Paused
Paused
Update app.py
Browse files
app.py
CHANGED
|
@@ -36,36 +36,24 @@ def get_youtube_transcript(youtube_url):
|
|
| 36 |
"x-rapidapi-host": AA_HOST
|
| 37 |
}
|
| 38 |
|
| 39 |
-
debug_info = []
|
| 40 |
-
|
| 41 |
# 언어 우선순위에 따라 순차적으로 요청을 시도
|
| 42 |
for lang in LANGUAGE_PRIORITY:
|
| 43 |
querystring = {"video_id": video_id, "lang": lang}
|
| 44 |
response = requests.get(url, headers=headers, params=querystring)
|
| 45 |
|
| 46 |
-
debug_info.append(f"Language: {lang}, Status Code: {response.status_code}")
|
| 47 |
-
|
| 48 |
# 상태 코드 확인 및 전체 응답 반환
|
| 49 |
if response.status_code == 200:
|
| 50 |
try:
|
| 51 |
data = response.json()
|
| 52 |
-
debug_info.append(f"Response data type: {type(data)}")
|
| 53 |
-
debug_info.append(f"Response data: {data[:100]}...") # 처음 100자만 출력
|
| 54 |
-
|
| 55 |
-
# 응답이 비어있거나 예상치 못한 형식인 경우 처리
|
| 56 |
-
if not data or (isinstance(data, dict) and not data.get('transcript')):
|
| 57 |
-
debug_info.append(f"No transcript found for language: {lang}")
|
| 58 |
-
continue
|
| 59 |
|
| 60 |
# 전체 응답 데이터를 그대로 반환
|
| 61 |
-
return {"language": lang, "data": data
|
| 62 |
|
| 63 |
except json.JSONDecodeError as e:
|
| 64 |
-
|
| 65 |
-
continue
|
| 66 |
|
| 67 |
# 모든 언어에서 자막을 찾지 못한 경우
|
| 68 |
-
return {"error": "우선순위 언어로 자막을 찾을 수 없습니다."
|
| 69 |
|
| 70 |
# Gradio 인터페이스 정의
|
| 71 |
def youtube_transcript_interface(youtube_url):
|
|
|
|
| 36 |
"x-rapidapi-host": AA_HOST
|
| 37 |
}
|
| 38 |
|
|
|
|
|
|
|
| 39 |
# 언어 우선순위에 따라 순차적으로 요청을 시도
|
| 40 |
for lang in LANGUAGE_PRIORITY:
|
| 41 |
querystring = {"video_id": video_id, "lang": lang}
|
| 42 |
response = requests.get(url, headers=headers, params=querystring)
|
| 43 |
|
|
|
|
|
|
|
| 44 |
# 상태 코드 확인 및 전체 응답 반환
|
| 45 |
if response.status_code == 200:
|
| 46 |
try:
|
| 47 |
data = response.json()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 48 |
|
| 49 |
# 전체 응답 데이터를 그대로 반환
|
| 50 |
+
return {"language": lang, "data": data}
|
| 51 |
|
| 52 |
except json.JSONDecodeError as e:
|
| 53 |
+
return {"error": f"JSON 디코딩 오류 발생: {str(e)}"}
|
|
|
|
| 54 |
|
| 55 |
# 모든 언어에서 자막을 찾지 못한 경우
|
| 56 |
+
return {"error": "우선순위 언어로 자막을 찾을 수 없습니다."}
|
| 57 |
|
| 58 |
# Gradio 인터페이스 정의
|
| 59 |
def youtube_transcript_interface(youtube_url):
|