start.py 1.0 KB

123456789101112131415161718192021222324252627282930313233
  1. # -*- coding: utf-8 -*-
  2. from helpers.logger import Logger
  3. from helpers.not_youtube import NotYoutube
  4. from helpers.player import Player
  5. import re
  6. from pyfzf.pyfzf import FzfPrompt
  7. import os
  8. subscriptions_list = open('subscribe.txt', 'r').readlines()
  9. channel_list = {}
  10. n_you = NotYoutube("{0}/cache/".format(os.getcwd()))
  11. Logger.log_info("Загрузка каналов....")
  12. for channel_url in subscriptions_list:
  13. channel_url = channel_url.strip()
  14. name = n_you.get_channel_name(channel_url)
  15. if name == "":
  16. continue
  17. Logger.log_info("found info about channel", channel_url, name)
  18. channel_list[name] = channel_url
  19. fzf = FzfPrompt()
  20. target_channel = fzf.prompt(channel_list)
  21. Logger.log_info("selected channel:", target_channel[0])
  22. video_list = n_you.get_channel_video(channel_list.get(target_channel[0]))
  23. target_video = fzf.prompt(video_list)
  24. Logger.log_info("selected video from channel:", target_video[0])
  25. video_url = video_list.get(target_video[0])
  26. Player.play_mpv("https://www.youtube.com" + video_url)