html-insta-test / script.js
slimshadow's picture
Create script.js
5efa6b0 verified
raw
history blame
1.45 kB
async function downloadReel() {
const reelUrl = document.getElementById('reelUrl').value.trim();
const messageDiv = document.getElementById('message');
const downloadLinkDiv = document.getElementById('downloadLink');
// Clear previous messages
messageDiv.textContent = '';
downloadLinkDiv.innerHTML = '';
// Check if the URL is empty or invalid
if (!reelUrl || !isValidUrl(reelUrl)) {
messageDiv.textContent = 'Please enter a valid Instagram Reel URL.';
return;
}
// Display loading message
messageDiv.textContent = 'Processing... Please wait.';
try {
const response = await fetch(`https://slimshadow-instagram-r-api.hf.space/download/?reel_url=${encodeURIComponent(reelUrl)}`);
const data = await response.json();
if (data && data.url) {
// Display download link
messageDiv.textContent = 'Reel downloaded successfully!';
downloadLinkDiv.innerHTML = `<a href="${data.url}" download>Click here to download the Reel</a>`;
} else {
messageDiv.textContent = 'Failed to fetch Reel. Please try again later.';
}
} catch (error) {
messageDiv.textContent = 'An error occurred. Please try again later.';
}
}
// Function to validate the URL format
function isValidUrl(url) {
const regex = /^(https?:\/\/)?(www\.)?instagram\.com\/reel\/[A-Za-z0-9_-]+$/;
return regex.test(url);
}