mirror of
https://github.com/azlux/botamusique
synced 2024-11-23 13:56:17 +00:00
Compare commits
4 Commits
f9cc9c7872
...
1c283654fd
Author | SHA1 | Date | |
---|---|---|---|
1c283654fd | |||
|
faddf4c6c2 | ||
b0e3e65caf | |||
|
e6d12e36c7 |
@ -1,3 +1,4 @@
|
||||
import logging
|
||||
import youtube_dl
|
||||
from constants import tr_cli as tr
|
||||
import variables as var
|
||||
@ -5,8 +6,10 @@ from media.item import item_builders, item_loaders, item_id_generators
|
||||
from media.url import URLItem, url_item_id_generator
|
||||
|
||||
|
||||
log = logging.getLogger("bot")
|
||||
|
||||
|
||||
def get_playlist_info(url, start_index=0, user=""):
|
||||
items = []
|
||||
ydl_opts = {
|
||||
'extract_flat': 'in_playlist',
|
||||
'verbose': var.config.getboolean('debug', 'youtube_dl')
|
||||
@ -23,6 +26,7 @@ def get_playlist_info(url, start_index=0, user=""):
|
||||
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
|
||||
attempts = var.config.getint('bot', 'download_attempts', fallback=2)
|
||||
for i in range(attempts):
|
||||
items = []
|
||||
try:
|
||||
info = ydl.extract_info(url, download=False)
|
||||
# # if url is not a playlist but a video
|
||||
@ -55,8 +59,10 @@ def get_playlist_info(url, start_index=0, user=""):
|
||||
}
|
||||
|
||||
items.append(music)
|
||||
except: # todo need to be specified
|
||||
pass
|
||||
|
||||
except Exception as ex:
|
||||
log.exception(ex, exc_info=True)
|
||||
continue
|
||||
|
||||
return items
|
||||
|
||||
|
4
util.py
4
util.py
@ -2,6 +2,7 @@
|
||||
# coding=utf-8
|
||||
|
||||
import hashlib
|
||||
import html
|
||||
import magic
|
||||
import os
|
||||
import io
|
||||
@ -311,7 +312,8 @@ def get_url_from_input(string):
|
||||
match = re.search("(http|https)://(\S*)?/(\S*)", string, flags=re.IGNORECASE)
|
||||
if match:
|
||||
url = match[1].lower() + "://" + match[2].lower() + "/" + match[3]
|
||||
return url
|
||||
# https://github.com/mumble-voip/mumble/issues/4999
|
||||
return html.unescape(url)
|
||||
else:
|
||||
return ""
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user