Spaces:
Sleeping
Sleeping
Keane Moraes
commited on
Commit
·
6d16da3
1
Parent(s):
ed57fa6
better way of getting youtube information
Browse files- app.py +7 -0
- transcription.py +5 -10
app.py
CHANGED
@@ -23,6 +23,13 @@ from takeaways import KeyTakeaways
|
|
23 |
from mindmap import MindMap
|
24 |
import models as md
|
25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
26 |
|
27 |
REGEXP_YOUTUBE_URL = "^(https?\:\/\/)?((www\.)?youtube\.com|youtu\.be)\/.+$"
|
28 |
|
|
|
23 |
from mindmap import MindMap
|
24 |
import models as md
|
25 |
|
26 |
+
def get_initial_message():
|
27 |
+
messages=[
|
28 |
+
{"role": "system", "content": "You are a helpful AI Tutor. Who anwers brief questions about AI."},
|
29 |
+
{"role": "user", "content": "I want to learn AI"},
|
30 |
+
{"role": "assistant", "content": "Thats awesome, what do you want to know aboout AI"}
|
31 |
+
]
|
32 |
+
return messages
|
33 |
|
34 |
REGEXP_YOUTUBE_URL = "^(https?\:\/\/)?((www\.)?youtube\.com|youtu\.be)\/.+$"
|
35 |
|
transcription.py
CHANGED
@@ -4,6 +4,7 @@ from moviepy.editor import *
|
|
4 |
from pydub import AudioSegment
|
5 |
from pydub.utils import make_chunks
|
6 |
import pydub
|
|
|
7 |
from pathlib import Path
|
8 |
import subprocess
|
9 |
|
@@ -42,21 +43,15 @@ class DownloadAudio:
|
|
42 |
|
43 |
def __init__(self, link) -> None:
|
44 |
self.link = link
|
45 |
-
|
|
|
|
|
46 |
self.YOUTUBE_VIDEO_ID = link.split("=")[1]
|
47 |
self.WAV_FILE_NAME = f"{self.YOUTUBE_VIDEO_ID}.wav"
|
48 |
|
49 |
def get_yt_title(self) -> str:
|
50 |
"""Returns the title of the youtube video"""
|
51 |
-
|
52 |
-
try:
|
53 |
-
title = self.yt.title
|
54 |
-
return title
|
55 |
-
except:
|
56 |
-
print("Failed to get name. Retrying...")
|
57 |
-
time.sleep(1)
|
58 |
-
self.yt = YouTube(self.link)
|
59 |
-
continue
|
60 |
|
61 |
def download(self, pathname:str) -> str:
|
62 |
"""
|
|
|
4 |
from pydub import AudioSegment
|
5 |
from pydub.utils import make_chunks
|
6 |
import pydub
|
7 |
+
from yt_dlp import YoutubeDL
|
8 |
from pathlib import Path
|
9 |
import subprocess
|
10 |
|
|
|
43 |
|
44 |
def __init__(self, link) -> None:
|
45 |
self.link = link
|
46 |
+
with YoutubeDL() as ydl:
|
47 |
+
self.yt = ydl.extract_info(self.link, download=False)
|
48 |
+
|
49 |
self.YOUTUBE_VIDEO_ID = link.split("=")[1]
|
50 |
self.WAV_FILE_NAME = f"{self.YOUTUBE_VIDEO_ID}.wav"
|
51 |
|
52 |
def get_yt_title(self) -> str:
|
53 |
"""Returns the title of the youtube video"""
|
54 |
+
return self.yt["title"]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
|
56 |
def download(self, pathname:str) -> str:
|
57 |
"""
|