-
Notifications
You must be signed in to change notification settings - Fork 0
/
logic_downloader.py
50 lines (36 loc) · 1.31 KB
/
logic_downloader.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# pip install pytube
from pytube import YouTube
import os
# link = g.value['link']
def chenge_directory(cwd_path):
os.getcwd()
return os.chdir(cwd_path)
def download_video(link,cwd_path):
chenge_directory(cwd_path)
videoObject = YouTube(link)
# Short way to download higest resolution
videoObject = videoObject.streams.get_highest_resolution()
# videoObject = YouTube(link).streams.order_by('resolution').desc().first().download()
try:
videoObject.download()
except:
ex_error = 'Somthing went wrong, try again!'
return ex_error
else:
succes = 'Download is complited successfuly'
return succes
def download_audio(link,cwd_path):
chenge_directory(cwd_path)
audioObject = YouTube(link)
audioObject = audioObject.streams.filter(only_audio = True, file_extension='mp3')
# choose the audio feed with the bigger bitrate available
# audioObject = YouTube(link).streams.filter(only_audio=True).order_by('abr').desc().first().download(filename_prefix="audio_")
try:
audioObject = audioObject.get_audio_only()
audioObject.download()
except:
ex_error = 'Somthing went wrong, try again!'
return ex_error
else:
succes = 'Audio file saved successfuly'
return succes