pinterest download [ plugins esm ]
To download the Pinterest URL link, it seems like it supports videos and photos at the same time.
// ===============================================
// Pinterest Downloader Handler
// Professional Version
// Author: Hridoy
// GitHub Version: v1.0
// ===============================================
import axios from 'axios';
async function downloadPinterest(url) {
const response = await axios.post(
'https://download.pinload.app/parse',
{ url },
{
headers: {
'Content-Type': 'application/json',
'User-Agent': 'Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36',
'Referer': 'https://pinload.app/en/download'
}
}
);
const data = response.data.data;
return {
success: true,
type: data.type,
url: data.url,
thumbnail: data.thumbnail,
title: data.title
};
}
const handler = async (m, { conn, args }) => {
if (!args[0]) return m.reply('Please enter the Pinterest link you want to download');
const url = args[0];
const loading = await m.reply('Processing Pinterest link...');
try {
const result = await downloadPinterest(url);
if (!result.success) throw 'Failed to fetch data';
const caption = `*Pinterest Downloader*
*Title:* ${result.title}
*Type:* ${result.type}
*URL:* ${result.url}`;
if (result.type === 'video') {
await conn.sendMessage(
m.chat,
{ video: { url: result.url }, caption },
{ quoted: m }
);
} else {
await conn.sendMessage(
m.chat,
{ image: { url: result.url }, caption },
{ quoted: m }
);
}
await conn.sendMessage(
m.chat,
{ image: { url: result.thumbnail }, caption: 'Thumbnail' },
{ quoted: m }
);
} catch (e) {
console.error(e);
m.reply('An error occurred while processing the Pinterest link');
} finally {
conn.sendMessage(m.chat, { delete: loading.key });
}
};
handler.help = ['pindl'];
handler.command = /^(pindl|pindownload|pindown)$/i;
handler.tags = ['downloader'];
handler.limit = true;
handler.premium = false;
export default handler;