javascript 从URL下载Instagram视频

j7dteeu8  于 2023-04-28  发布在  Java
关注(0)|答案(3)|浏览(156)

我有一个机器人,我一直想添加一个功能,用户输入一个Instagram链接,它返回从帖子下载的媒体。问题是我不知道如何获得视频链接来下载它。
我试过使用npm的Instagram下载包,但它们通常不会返回任何内容。我也试过抓取网页,但是页面不是静态的,所以请求HTML并没有给予我任何有用的数据。我尝试过的另一个选择是在网站上查看inspect元素,以找到任何有用的东西,但过了一段时间,我最终没有找到任何有用的东西,我可以从代码中访问。
任何帮助或想法将是好的,因为我尝试了任何我能想到的。

gcuhipw9

gcuhipw91#

  • 简短回答:*

1.没有2FA的Instagram账户
1.安装gallery-dl:

sudo apt update && sudo snap install gallery-dl

1.下载资源:

gallery-dl -g -u "<username>" -p "<password>" "https://www.instagram.com/p/CUU9-FFFaE5/"

写一些Node。js代码,它将像这样或以其他方式异步执行命令:

const command = `gallery-dl -g -u "${user}" -p "${pass}" "${url}"`;
exec(command, async (err, stdout, stderr) => {
    if (err) {
        // getting the err.message
    } else {
        // use the downloaded file name/path to do your stuff
    }
});
  • 个人想法:*

首先,我不建议以非官方的方式这样做,但除此之外,理论上你可以通过两种方式来做到这一点:使用gallery-dl这样的工具或其他你想使用的工具获取媒体,或者只是自己解析它(我已经通过Node解析它)。js片段大约3年前,在那一刻Instagram一直在改变他们的API策略或类似的东西,所以我不记得我是怎么做的)。
实际上,在某种程度上,这两种方式是相同的,他们只是在获取数据,但无论如何。.你可以在instagram上有一些帐户,只用于进行解析而不需要任何多因素身份验证,并使用gallery-dl

xoefb8l8

xoefb8l82#

也许这样能行https://developers.facebook.com/docs/instagram-api/reference/ig-media
你必须使用Instagram Graph API来实现这一点。

368yc8dk

368yc8dk3#

也许你可以在rapidapi上搜索“instagram媒体下载器”,试试其中一款产品,然后从那里开始?
我找到了一个也许能帮到你的:https://rapidapi.com/arraybobo/api/instagram-media-downloader/

相关问题