|
import pytube as pt |
|
|
|
|
|
def second_to_timecode(x: float) -> str: |
|
"""Float x second to HH:MM:SS.DDD format.""" |
|
hour, x = divmod(x, 3600) |
|
minute, x = divmod(x, 60) |
|
second, x = divmod(x, 1) |
|
millisecond = int(x * 1000.) |
|
|
|
return '%.1d:%.2d:%.2d.%.3d' % (hour, minute, second, millisecond) |
|
|
|
|
|
def download_from_youtube(youtube_link: str) -> str: |
|
yt = pt.YouTube(youtube_link) |
|
available_streams = yt.streams.filter(only_audio=True) |
|
print('available streams:') |
|
print(available_streams) |
|
stream = available_streams.first() |
|
|
|
|
|
stream.download(filename="audio.wav") |
|
return "audio.wav" |