YouTubeToTextInVariousLanguage / YouTubeDataExtraction.py
Rehman1603's picture
Create YouTubeDataExtraction.py
464d05e
from youtube_transcript_api import YouTubeTranscriptApi
import pytube as py
from deep_translator import GoogleTranslator as gt
def Extract_Video_id(url):
id=py.extract.video_id(url)
return id
def Video_To_Text(video_url,Language):
try:
video_id=Extract_Video_id(video_url)
final_data=' '
i=0
Video_Data=YouTubeTranscriptApi.get_transcript(video_id)
for data in Video_Data:
final_data=final_data+' '+Video_Data[i].get("text")
i=i+1
mode=" "
conv_res=" "
if(Language=="Urdu"):
mode="urdu"
translated_text=gt(source="auto",target=mode).translate(final_data)
conv_res=translated_text
elif(Language=="German"):
mode="german"
translated_text=gt(source="auto",target=mode).translate(final_data)
conv_res=translated_text
elif(Language=="Hindi"):
mode="hindi"
translated_text=gt(source="auto",target=mode).translate(final_data)
conv_res=translated_text
else:
conv_res="No Translation selected"
return final_data,conv_res
except:
return "Error Link in Problem Not Subtitle","Text to long to translate"