Instagram IGTV无法下载

时间:2019-01-30 17:52:47

标签: android instagram instagram-api

我想构建一个Android应用来下载instagram图像,视频和igtvs。因此我可以轻松地下载图片而无需访问令牌,但是对于下载视频,我必须具有访问令牌才能使用instagram api,最后我没有关于下载igtv的想法。 我在页面上上传了一个igtv视频(我的应用程序处于沙盒模式,但我是管理员),而instagram回应“媒体网址无效”

2 个答案:

答案 0 :(得分:0)

哦,在一周内使用Instagram API并寻找查找方法之后,这非常容易! 获取页面的html内容,并使用正则表达式找到下载链接:
<meta property="og:video" content="video_link" /> 这个正则表达式将非常有用:

        String getVideoUrl(String content) {

        String videoUrl = null;
        String regex = "<meta property=\"og:video\" content=\"(.*?)\" />";
        Pattern p = Pattern.compile(regex, Pattern.MULTILINE);
        Matcher m = p.matcher(content);

        if (m.find()) {
            videoUrl = m.group(1);
        }
        return videoUrl;
    }

此代码对于下载视频和IGTV也很有用。 此外,要下载图片,该图片对我有用:

regex = "<meta property=\"og:image\" content=\"(.*?)\"";

答案 1 :(得分:0)

您要么浏览页面的查看源,要么抓取页面。随着Instagram更改页面结构,它也会更改。 我们在媒体URL中发现了另一种方法,只需在查询字符串中添加__a = 1即可获取JSON。那么您可以解析 JSON 以获得下载链接并下载媒体。它还适用于多种轮播媒体,视频以及IGTV

https://www.instagram.com/p/CGIugM4lIy_/

将会

https://www.instagram.com/p/CGIugM4lIy_/?__a=1

它将为您提供可以解析的JSON。

您也可以尝试此应用程序,该应用程序还包括带有源代码的完整应用程序。 Instagram download source code

这包括使用上述方法的完整源代码。