Scraper - Twitter Downloader

Twitter adalah salah satu platform media sosial populer yang memungkinkan pengguna berbagi teks, gambar, dan video.

Muhamad Nur Ibad

14 Januari 20251 menit baca

Membuat Twitter Downloader dengan Teknik Scraping

Twitter adalah salah satu platform media sosial populer yang memungkinkan pengguna berbagi teks, gambar, dan video. Kadang-kadang, Anda mungkin ingin mengunduh video menarik dari Twitter untuk digunakan secara offline. Dalam artikel ini, kita akan membahas cara membuat Twitter Downloader menggunakan Node.js dan library cheerio untuk scraping data dari situs pihak ketiga.

Apa itu Scraping?

Scraping adalah proses mengumpulkan data dari situs web secara programatik. Dengan scraping, kita bisa mengekstrak informasi tertentu, seperti URL video, judul, nama penulis, dan tanggal unggahan dari halaman web.


Persiapan

Sebelum memulai, pastikan Anda memiliki:

1. Node.js terinstal di komputer Anda.

2. Library cheerio untuk mem-parsing HTML.

Install cheerio menggunakan perintah:

npm install cheerio


Kode Twitter Downloader

Berikut adalah kode lengkap untuk scraping informasi dari video Twitter:

const cheerio = require("cheerio");

const twitter = async (url) => {
    try {
        // Fetch HTML dari situs pihak ketiga
        const res = await fetch(`https://twitsave.com/info?url=${encodeURIComponent(url)}`);
        const html = await res.text();
        const $ = cheerio.load(html);

        // Ekstraksi data yang diinginkan
        return {
            result: $('.h-80.aspect-video.lg\\:w-5\\/6.rounded-lg.bg-slate-900').attr('src'),
            author: $('.font-semibold.text-slate-800.dark\\:text-slate-200').text().replace(/:/, ""),
            title: $('p.m-2').text(),
            uploadDate: $('a.text-xs.text-slate-500.dark\\:text-slate-200').text()
        };
    } catch (error) {
        console.error("Terjadi kesalahan:", error.message);
    }
};

// Contoh penggunaan
(async () => {
    const twitdl = await twitter("https://twitter.com/elfataaaa/status/1640560531118641153");
    console.log(twitdl);
})();

Penjelasan Kode

1. Mengambil HTML Dengan menggunakan fungsi fetch, kita mengambil HTML dari situs pihak ketiga yang mendukung pengunduhan video Twitter.

2. Parsing HTML Menggunakan cheerio, kita dapat membaca elemen-elemen HTML dan mengekstrak informasi yang dibutuhkan seperti:

  • result: URL video.

  • author: Nama pengguna yang memposting video.

  • title: Judul atau deskripsi postingan.

  • uploadDate: Tanggal unggahan video.

3. Output Data Fungsi akan mengembalikan objek yang berisi semua informasi tersebut.


Contoh Output

Ketika kode dijalankan, hasilnya akan seperti ini:

{
  "result": "https://video.twimg.com/.../video.mp4",
  "author": "elfataaaa",
  "title": "Ini adalah deskripsi video.",
  "uploadDate": "10 Januari 2025"
}

Kesimpulan

Dengan teknik scraping menggunakan Node.js dan cheerio, Anda dapat membuat aplikasi downloader sederhana untuk mengambil video dari Twitter. Namun, pastikan Anda mematuhi kebijakan penggunaan Twitter dan situs pihak ketiga yang Anda gunakan.

Catatan Penting: Scraping data dari situs pihak ketiga dapat melanggar ketentuan layanan situs tersebut. Selalu gunakan metode ini dengan bijak.