Как я могу скачать видео с заданным URL с помощью axios и NodeJs? - PullRequest
0 голосов
/ 19 октября 2019

Я пытаюсь создать инструмент для сканирования с веб-сайта. Я использовал cherrio.js и nodejs, чтобы получить прямую URL-ссылку видео. Тем не менее, я не знаю, как скачать видео с заданным URL. Я пытался использовать Axios для отправки запроса на получение данного URL, но это не показалось правильным. Пожалуйста, кто-нибудь может предложить мне решение? Я действительно ценю твою помощь. URL выглядит так: https://redirector.googlevideo.com/videoplayback?expire=1571499002&ei=2g-rXd-5DJKe8gOI9IfoCg&ip=116.203.106.29&id=1a1e61025075dbf7&itag=22&source=picasa&begin=0&requiressl=yes&mm=30&mn=sn-4g5ednz7&ms=nxu&mv=m&mvi=4&pl=16&sc=yes&susc=ph&app=fife&mime=video/mp4&cnr=14&dur=7986.967&lmt=1571461717836153&mt=1571491765&ipbits=0&cms_redirect=yes&keepalive=yes&sparams=expire,ei,ip,id,itag,source,requiressl,susc,app,mime,cnr,dur,lmt&sig=ALgxI2wwRQIgJLRUEqOpFLRr_x2BHuEYsjVWGzfqKB0CVVbutR-rTY0CIQDrAxVo9d8Ug4jXm3gZSqQNNMwLdLftzfVMgxsY8WmdIw==&lsparams=mm,mn,ms,mv,mvi,pl,sc&lsig=AHylml4wRgIhAIXeYkpLRBpHG9G-peCNuwns49rNttx5MstelxXByYf2AiEAkiP8asa3V2VI7kQvUmdNsqca3TKbVSKPgZLN1me83-Y=

Вот мой код:

async function downloadImage () {  
    const url = 'https://redirector.googlevideo.com/videoplayback?expire=1571499002&ei=2g-rXd-5DJKe8gOI9IfoCg&ip=116.203.106.29&id=1a1e61025075dbf7&itag=22&source=picasa&begin=0&requiressl=yes&mm=30&mn=sn-4g5ednz7&ms=nxu&mv=m&mvi=4&pl=16&sc=yes&susc=ph&app=fife&mime=video/mp4&cnr=14&dur=7986.967&lmt=1571461717836153&mt=1571491765&ipbits=0&cms_redirect=yes&keepalive=yes&sparams=expire,ei,ip,id,itag,source,requiressl,susc,app,mime,cnr,dur,lmt&sig=ALgxI2wwRQIgJLRUEqOpFLRr_x2BHuEYsjVWGzfqKB0CVVbutR-rTY0CIQDrAxVo9d8Ug4jXm3gZSqQNNMwLdLftzfVMgxsY8WmdIw==&lsparams=mm,mn,ms,mv,mvi,pl,sc&lsig=AHylml4wRgIhAIXeYkpLRBpHG9G-peCNuwns49rNttx5MstelxXByYf2AiEAkiP8asa3V2VI7kQvUmdNsqca3TKbVSKPgZLN1me83-Y="'
const path = Path.resolve(__dirname, 'images', 'movie.mp4')
const writer = Fs.createWriteStream(path)

const response = await Axios({
  url,
  method: 'GET',
  responseType: 'stream'
})

response.data.pipe(writer)

return new Promise((resolve, reject) => {
  writer.on('finish', resolve)
  writer.on('error', reject)
})

}

файл в формате mp4, который появляется в папке с изображениями, но этофайл - это не видео, которое я пытаюсь загрузить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...