@Jesus_Christophe

Как получить прямую ссылку любого файла cloud mail.ru?

Мне необходимо получить прямую ссылку файла на cloud mail.ru, но как это сделать не имею понятия. Нормальных библиотек не смог найти (не работают вовсе).
  • Вопрос задан
  • 2666 просмотров
Решения вопроса 1
@alekssamos
Программист любитель
def cm_get_info(url):
    import json
    import urllib.request
    import re
    def between(start, end, string):
        return re.findall(re.escape(start)+'(.*?)'+re.escape(end), string, flags=re.DOTALL)[0]
    
    headers = {
        "User-Agent": r"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:96.0) Gecko/20100101 Firefox/96.0"
    }
    resp = urllib.request.urlopen(urllib.request.Request(url, headers=headers)).read().decode("UTF-8")
    data = between('<script>window.cloudSettings =', ';</script>', resp).replace('/', r'\/')
    data = re.sub(r'"[^"]+x3c.*?",', '"",', data)
    return json.loads(data)

def cm_get_direct_link(url):
    data = cm_get_info(url)
    return "/".join([
        data["dispatcher"]["weblink_get"][0]["url"],
        data["request"]["weblink"]
    ])

direct_link = cm_get_direct_link("https://cloud.mail.ru/public/5poV/cRDxAbPEQ")
print(direct_link)

На момент 28.01.2022 работает.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@nkno
Beautiful Soap тебе в помощь.
https://dvmn.org/encyclopedia/modules/bs4-tutorial/
почитай
Успехов)
Ответ написан
Комментировать
SilenceOfWinter
@SilenceOfWinter
та еще зажигалка...
врядли, да и какой в этом смысл? если нужно api, то есть https://github.com/kireevmp/mailru-cloud-api
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы