Untitled

 avatar
unknown
python
2 years ago
1.6 kB
21
Indexable
# что бы скачать музыку:
# указать ссылку response и раскомментировать в конце функцию download
# в строке 30 можно посмотреть сколько файлов найдено

import requests
import json

response = requests.get("https://2ch.hk/b/res/283017712.json")

# create a formatted string of the Python JSON object
text = json.dumps(response.json()['threads'][0], indent=4)

# text который str переводим в dict
data = json.loads(text)

# храним ссылки
urls = []

# пройтисе по всем ответам
for i in data['posts']:
    # ответ с файлом(и)
    if i['files']:
        # в одном посте может быть больше одного файла
        for j, file_path in enumerate(i['files']):
            # берем только видео файлы
            if "webm" in file_path['path'] or "mp4" in file_path['path']:
                urls.append(file_path['path'])

# посмотреть сколько файлов
# print(len(urls))

# скачать всё
def download(dl_url):
    for i, s in enumerate(urls):
        dl_url = "https://2ch.hk"+s
        # получить ссылку
        r = requests.get(dl_url, allow_redirects=True)
        # скачать
        if s[-4:] == "webm":
            open(str(i)+'vid.webm', 'wb').write(r.content)
        else:
            open(str(i)+'vid.mp4', 'wb').write(r.content)

# download(urls)
Editor is loading...