TypeScript:
Hämta en webbsida

Hur man gör:

import axios from 'axios';  // För HTTP-begäranden

async function laddaNerWebbsida(url: string): Promise<string> {
    try {
        const response = await axios.get(url);
        return response.data;  // Webbsidans HTML som en sträng
    } catch (error) {
        throw new Error(`Kunde inte ladda ner sidan: ${error}`);
    }
}

// Använd funktionen och skriv ut resultatet
(async () => {
    const webbsida = await laddaNerWebbsida('https://www.exempel.se');
    console.log(webbsida);
})();

Exempelutdata:

<!doctype html>
<html lang="sv">
...
</html>

Djupdykning:

Att hämta webbsidor är en vanlig uppgift som kan utföras med olika verktyg och bibliotek. Historiskt har verktyg som curl och wget använts i kommandotolkar. I TypeScript och JavaScript-världen är axios, en populär HTTP-klient, och fetch-API:et i moderna webbläsare, vanliga val.

Detaljerna i implementationen kan variera beroende på sidans struktur och skyddsmekanismer, som CORS (Cross-Origin Resource Sharing) eller CSRF-token (Cross-Site Request Forgery). För att hantera dynamiska webbsidor som används JavaScript kan ett huvudlöst webbläsarbibliotek som Puppeteer behövas.

Se även: