import pytube from moviepy.editor import VideoFileClip import pywhisper import os def download_video(url): video = pytube.YouTube(url) stream = video.streams.get_by_itag(18) stream.download() return stream.default_filename def convert_to_mp3(filename): clip = VideoFileClip(filename) clip.audio.write_audiofile(filename[:-4] + ".mp3") clip.close() def AudiotoText(filename): model = pywhisper.load_model("base") result = model.transcribe(filename) print(result["text"]) sonuc = result["text"] return sonuc def main(url): print(''' This tool will convert Youtube videos to mp3 files and then transcribe them to text using Whisper. ''') print("Downloading video... Please wait.") try: filename = download_video(url) print("Downloaded video as " + filename) except: print("Not a valid link..") return try: convert_to_mp3(filename) print("Converted video to mp3") except: print("Error converting video to mp3") return try: model = pywhisper.load_model("base") result = model.transcribe(filename[:-4] + ".mp3") print(result["text"]) result = result["text"] os.remove(filename) os.remove(filename[:-4] + ".mp3") print("Removed video and audio files") print("Done!") return result except: print("Error transcribing audio to text") return if __name__ == "__main__": main()