Как использовать wget в случае, если как json?

Предположим, что у нас есть json как это:

[{
    "title": "How to download File From Node Js",
    "extension": "mp4",
    "url" : "http://zzz.com/asd/what.mp4",
    "folder__relative_path": "tutorial/node"
}, {
    "title": "How to play Guitar",
    "extension": "mp4",
    "url" : "http://asdz.com/asd/dsa.mp4",
    "folder__relative_path": "another_folder/hello/tutorial/Guitar"
}
....
more
more
....
]

Так в основном у Нас есть json файл с информацией о URL загрузки, пути и имени файла с расширением. Мы просто хотим загрузить с вышеупомянутой ссылки.

Как делают я загружаю, переименовывают с заголовком с расширением и сохраняют к каталогу, который мы указали;

Мы знаем, что можем использовать wget как это

wget www.zzz.com/1.mp4 -O /var/cache/foobar/google.mp4

но разве это не трудно, чтобы выбрать и сохранить от json??

Там должен так или иначе решить эту проблему?

1
задан 28 December 2016 в 14:03

1 ответ

Можно использовать Python для , анализируют JSON, и работает wget :

#! /usr/bin/python3
import json, sys, subprocess

for k in json.load(sys.stdin):
    cmd = ["echo", "wget", k["url"], "-O", '{:s}/{:s}.{:s}'.format(k["folder__relative_path"], k["title"], k["extension"])]
    subprocess.run(cmd)

С демонстрационным входом:

$ python3 f.py < foo.txt
wget http://zzz.com/asd/what.mp4 -O tutorial/node/How to download File From Node Js.mp4
wget http://asdz.com/asd/dsa.mp4 -O another_folder/hello/tutorial/Guitar/How to play Guitar.mp4

Удаляют "echo", для фактического выполнения wget команды после проверки вывода.

1
ответ дан 7 December 2019 в 15:42

Другие вопросы по тегам:

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