const axios = require('axios');
const qs = require('qs');
const cheerio = require('cheerio');
async function igdl(urls) {
const [baseUrl, paramsString] = urls.split('?');
const params = new URLSearchParams(paramsString);
const url = baseUrl;
const igsh = params.get('igsh');
let data = qs.stringify({
'url': url,
'igsh': igsh,
'lang': 'en'
});
let config = {
method: 'POST',
url: 'https://api.instasave.website/media',
headers: {
'User-Agent': 'Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Mobile Safari/537.36',
'Content-Type': 'application/x-www-form-urlencoded',
'origin': 'https://instasave.website',
'referer': 'https://instasave.website/',
'accept-language': 'id-ID,id;q=0.9,en-US;q=0.8,en;q=0.7',
},
data: data
};
try {
const api = await axios.request(config);
const $ = cheerio.load(api.data);
const thumbnailUrl = $('img').attr('src').replace(/\\"/g, '');
const downloadUrl = $('a').attr('href').replace(/\\"/g, '');
return {
thumbnail: thumbnailUrl,
downloadUrl: downloadUrl
};
} catch (error) {
console.error('Error fetching data:', error.message);
return null;
}
}
// Contoh penggunaan
igdl("https://www.instagram.com/reel/DFt_ud3ygZX/?utm_source=ig_web_copy_link&igsh=MzRlODBiNWFlZA==")