একটি ওয়েবপেজ ডাউনলোড করা

JavaScript:
একটি ওয়েবপেজ ডাউনলোড করা

কিভাবে:

নোড.জেএস দিয়ে node-fetch ব্যবহার করে একটি পেজ ডাউনলোড করার একটি দ্রুত উপায় এখানে দেওয়া হল:

const fetch = require('node-fetch'); // প্রথমে এটি ইনস্টল করতে হতে পারে!

async function downloadPage(url) {
    try {
        const response = await fetch(url);
        const body = await response.text();
        console.log(body); // পেজের HTML সোর্স আউটপুট দেয়
    } catch (error) {
        console.error(error);
    }
}

downloadPage('https://example.com');

নমুনা আউটপুট:

<!doctype html>
<html>
<head>
    <title>Example Domain</title>
...
</html>

গভীর ডুব

ঐতিহাসিকভাবে, ওয়েব পেজ ডাউনলোড করা হতো ব্রাউজারে XMLHTTPRequest অথবা নোড.জেএসে http মডিউলের মাধ্যমে। তবে, ES6-এর পর, fetch API এর সহজ সিনট্যাক্স এবং Promise-ভিত্তিক প্রকৃতির কারণে আধুনিক মানদণ্ড হয়ে উঠেছে।

বিকল্পগুলির মধ্যে axios রয়েছে, যা নেটিভ fetch এর তুলনায় একটু বেশি কার্যকারিতা সহ রিকোয়েস্ট সামলায়। জটিল ব্যবহারের ক্ষেত্রে, জাভাস্ক্রিপ্ট-রেন্ডার কনটেন্ট নিয়ে কাজ করার জন্য হেডলেস ব্রাউজারে পেজটি প্রকৃতপক্ষে রেন্ডার করতে আপনি puppeteer ব্যবহার করতে পারেন।

পেজ ডাউনলোড বাস্তবায়নের সময় robots.txt মেনে চলা, User-Agent সামলানো যাতে ব্লক না হয়ে যায়, এবং সার্ভার ওভারলোড অথবা রেস কন্ডিশনের সাথে সম্ভাব্য সমস্যা এড়াতে অ্যাসিঙ্ক্রোনাস হ্যান্ডলিংকে যত্নসহকারে পরিচালনা করার মতো দিকগুলি লক্ষ্য রাখা উচিত।

আরও দেখুন