add disk.yandex.com, disk.yandex.com.tr, disk.yandex.ru support

Improved direct link generator
This commit is contained in:
cihanvol 2021-07-10 01:13:41 +03:00 committed by GitHub
parent 0a9b9ebe31
commit 769bcd81b5
Signed by untrusted user: GitHub
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -36,7 +36,7 @@ def direct_link_generator(link: str):
raise DirectDownloadLinkException(f"Use /{BotCommands.WatchCommand} to mirror Youtube link\nUse /{BotCommands.TarWatchCommand} to make tar of Youtube playlist")
elif 'zippyshare.com' in link:
return zippy_share(link)
elif 'yadi.sk' in link:
elif 'yadi.sk' or 'disk.yandex.com.tr' or 'disk.yandex.com' or 'disk.yandex.ru' in link:
return yandex_disk(link)
elif 'cloud.mail.ru' in link:
return cm_ru(link)
@ -116,6 +116,12 @@ def zippy_share(url: str) -> str:
def yandex_disk(url: str) -> str:
""" Yandex.Disk direct links generator
Based on https://github.com/wldhx/yadisk-direct """
if "disk.yandex.com.tr" in url:
url = url.replace("disk.yandex.com.tr", "yadi.sk")
elif "disk.yandex.com" in url:
url = url.replace("disk.yandex.com", "yadi.sk")
elif "disk.yandex.ru" in url:
url = url.replace("disk.yandex.ru", "yadi.sk")
try:
link = re.findall(r'\bhttps?://.*yadi\.sk\S+', url)[0]
except IndexError: