โ† Kembali ke blog

Cara Mengumpulkan Data Reddit di 2026: Batas API, .json Tertutup, dan Peran Proxy

Pada bulan Mei 2026, Reddit menutup .json yang tidak terautentikasi, dan robots.txt memberikan Disallow: / untuk semua. Kita membahas batasan nyata dari Data API resmi (100 QPM, $0.24 per 1000 panggilan), skema langkah demi langkah dari pipeline yang berkelanjutan, listing-cap sebanyak 1000 elemen dan tugas-tugas apa yang benar-benar diselesaikan oleh proxy dalam skema ini, dan mana yang tidak.

๐Ÿ“…28 Juli 2026
Cara Mengumpulkan Data Reddit di 2026: Batas API, .json Tertutup, dan Peran Proxy
```html

Pada bulan Mei 2026, Reddit menutup akses tidak terautentikasi ke .json endpoint โ€” trik "tambahkan .json ke URL mana pun", yang telah digunakan oleh puluhan skrip, dasbor, dan proyek kecil selama bertahun-tahun. Pemeriksaan pada 28 Juli 2026: permintaan ke https://www.reddit.com/r/webscraping/top.json?t=week dengan User-Agent browser biasa mengembalikan 403 Forbidden. Pada saat yang sama, robots.txt Reddit hanya berisi dua baris penting: User-agent: * dan Disallow: / โ€” merujuk pada Kebijakan Konten Publik.

Ini mengubah bukan "bagaimana cara menghindari", tetapi bagaimana sekarang membangun pipeline pengumpulan data Reddit. Di bawah ini adalah skema kerja untuk tahun 2026: apa yang benar-benar tersedia, batasan apa yang ada, di mana proxy diperlukan, dan di mana mereka tidak akan membantu.

Apa yang benar-benar rusak: kronologi singkat

  • Juni 2023 โ€” Reddit memperkenalkan tarif berbayar $0.24 untuk 1000 panggilan API untuk aplikasi dengan beban tinggi. Akibatnya: penutupan Apollo (pengembang memperkirakan biaya akses sekitar $20 juta per tahun), keluarnya sebagian besar klien pihak ketiga, dan penghentian Pushshift โ€” arsip publik pos dan komentar, yang menjadi andalan setengah dari penelitian akademis.
  • Mei 2026 โ€” deprekasi .json yang tidak terautentikasi. Alat yang "hanya menarik URL" berhenti berfungsi; lalu lintas dialihkan melalui perlindungan Cloudflare dengan pemeriksaan sesi.
  • Oktober 2025 โ€” saat ini โ€” gugatan Reddit terhadap Perplexity AI, Oxylabs UAB, AWMProxy, dan SerpApi (Distrik Selatan New York, Hakim Engelmaier). Reddit menuduh para tergugat melakukan ekstraksi konten mereka secara industri melalui hasil pencarian Google dan menjual kembali data, mengacu pada ketentuan anti-penghindaran DMCA. Gugatan pertama yang dimodifikasi diajukan; pada Maret 2026, kasus ini berada pada tahap motion to dismiss. Para tergugat membantah pelanggaran: Perplexity menyebut ini sebagai upaya untuk menutup data publik, SerpApi dan Oxylabs menyatakan akses ke web publik sesuai dengan hukum.

Kesimpulan praktis dari poin ketiga: pengumpulan data Reddit dengan cara menghindari API resmi โ€” ini bukan zona risiko teknis, tetapi hukum, dan harga kesalahan untuk proyek komersial diukur bukan dengan larangan, tetapi dengan gugatan. Lebih lanjut tentang bagaimana pengadilan pada tahun 2026 menafsirkan ekstraksi data dari hasil pencarian, kami bahas dalam materi tentang putusan kasus Google dan SerpApi.

API Data Resmi: batasan nyata 2026

Ini adalah satu-satunya cara yang tidak menciptakan klaim hukum. Angka-angka yang perlu diketahui sebelum merancang:

  • 100 permintaan per menit untuk klien OAuth. Jendela dirata-ratakan sekitar 10 menit, jadi lonjakan singkat diperbolehkan.
  • 10 permintaan per menit tanpa OAuth โ€” ini tidak cukup untuk apa pun kecuali debugging.
  • Batas dihitung per kunci aplikasi, bukan per pengguna akhir. Lima aliran pada satu token tidak memberikan kapasitas lima kali lipat โ€” mereka hanya membakar satu anggaran lima kali lebih cepat.
  • Tarif gratis mencakup proyek pribadi, bot, alat moderator, dan penelitian akademis. Tidak ada penghitung uang, hanya ada batasan frekuensi.
  • Penggunaan komersial memerlukan kontrak dan persetujuan manual; tarif โ€” $0.24 untuk 1000 panggilan. Menurut perkiraan platform industri, ambang masuk untuk kontrak komersial dimulai sekitar $12.000 per tahun.
  • Pelatihan model ML pada data API secara langsung dilarang oleh ketentuan Data API. Lisensi untuk pelatihan adalah kontrak privat terpisah (kesepakatan Reddit dengan Google diperkirakan sekitar $60 juta per tahun di media).

Judul yang harus selalu diparsing

Reddit memberikan tiga judul untuk setiap respons: X-Ratelimit-Used, X-Ratelimit-Remaining, dan X-Ratelimit-Reset. Ini adalah satu-satunya sumber kebenaran yang dapat diandalkan tentang anggaran Anda โ€” bukan konstanta dalam kode dan bukan wiki lama dengan angka "60 permintaan per menit" (itu sudah usang sejak 2023).

Persyaratan untuk User-Agent

Reddit mengharapkan string deskriptif unik dalam format platform:app_id:version (by /u/username). User-Agent universal dan kosong dipotong keras berdasarkan frekuensi โ€” ini adalah hal pertama yang harus diperiksa jika batas habis lebih cepat dari yang diperkirakan.

Langkah demi langkah: bagaimana membangun pipeline yang tidak gagal

  1. Daftarkan script-app di pengaturan Reddit dan dapatkan client_id/client_secret. Untuk beban baca-saja, ini adalah jenis aplikasi yang paling sederhana.
  2. Tetapkan User-Agent yang benar sesuai format di atas. Jangan salin string dari tutorial orang lain โ€” app_id dan nama pengguna harus milik Anda.
  3. Baca X-Ratelimit-Remaining pada setiap respons, bukan hanya saat terjadi kesalahan. Ketika sisa permintaan turun sekitar 20, beralihlah ke tempo yang merata: jeda untuk panggilan = detik hingga reset jendela รท sisa permintaan. Dengan cara ini, Anda meratakan kuota di jendela alih-alih terjebak di dinding.
  4. Tangani 429 dengan benar. Ambil jeda pertama dari header Retry-After. Selanjutnya โ€” exponential backoff dengan jitter: wait = 2^attempt + random(). Jitter adalah keharusan: tanpa itu, klien paralel mengulangi permintaan secara sinkron dan menyebabkan gelombang kegagalan kedua.
  5. Cache pembacaan dengan TTL. Permintaan ulang untuk listing yang sama adalah penyebab paling umum dari pemborosan kuota dalam proyek pemantauan.
  6. Skalakan dengan rotasi token, bukan aliran. Setiap token OAuth membawa penghitung independen; beberapa aplikasi di akun yang berbeda dengan distribusi round-robin (di Python โ€” itertools.cycle) meningkatkan throughput secara linier. Penting: untuk beban komersial, ini tidak menggantikan kontrak dengan Reddit โ€” ini adalah cara untuk mematuhi batas yang adil, bukan untuk menghindarinya.
  7. Siapkan cara untuk melewati batas listing. Reddit memberikan maksimum sekitar 1000 elemen per listing (100 per halaman, kursor after). Konten yang lebih lama tidak tersedia melalui endpoint standar. Solusi standar โ€” bukan "menembus" batas, tetapi memotong sampel berdasarkan waktu dan melakukan beberapa permintaan sempit alih-alih satu permintaan luas.
  8. Untuk data historis, cari indeks, bukan API. Setelah penutupan Pushshift, niche-nya diambil alih oleh indeks eksternal seperti PullPush (gratis, tetapi tanpa SLA) dan API pencarian komersial dengan indeks mereka sendiri dan batasan lainnya. Untuk pekerjaan akademis, Reddit memiliki program terpisah Reddit for Researchers.

Perangkap yang akan diketahui terlambat

PRAW menenangkan aliran, tetapi tidak menyelamatkan dari segalanya. Pembatas bawaan PRAW membaca header dan secara otomatis menempatkan jeda โ€” ini bekerja dengan baik untuk skrip satu aliran. Status saat ini dapat dilihat melalui reddit.auth.limits. Ini rusak dalam dua kasus: saat multithreading dengan kredensial bersama (instansi tidak melihat konsumsi satu sama lain) dan dalam kode async, di mana time.sleep yang memblokir menggantung event loop.

Agensi AI membakar kuota tanpa terlihat. Satu langkah penalaran agen dengan mudah dapat berkembang menjadi 10โ€“15 panggilan alat. Sepuluh sesi paralel โ€” itu 100โ€“150 permintaan bersamaan, yaitu seluruh anggaran menit dalam hitungan detik. Jika Anda membangun agen di atas Reddit, pembatas diperlukan di tingkat pool, bukan panggilan terpisah.

Polling tanpa backoff. Memeriksa pembaruan "setiap N detik" tanpa jeda eksponensial โ€” penyebab kedua terbanyak dari 429 setelah token umum.

Di mana proxy benar-benar diperlukan, dan di mana tidak

Katakanlah dengan jujur: proxy tidak meningkatkan batas API resmi Anda. Kuota terikat pada kunci aplikasi, bukan pada IP yang keluar, dan upaya untuk "menggandakan" itu dengan mengganti alamat tidak berhasil dan bertentangan dengan ketentuan. Tugas yang benar-benar diselesaikan oleh proxy dalam pipeline reddit berbeda:

  • Akses geo dan konektivitas. Reddit tidak tersedia atau sebagian dibatasi di sejumlah negara, dan jaringan perusahaan memotongnya sebagai jejaring sosial. Node keluar yang stabil di wilayah yang diperlukan adalah masalah ketersediaan infrastruktur, bukan penghindaran batas. Untuk tugas server dengan IP tetap biasanya cukup menggunakan data center proxy.
  • Penyajian regional. Beberapa konten dan rekomendasi Reddit diberikan dengan mempertimbangkan geografi permintaan; jika Anda menganalisis apa yang dilihat audiens di negara tertentu, Anda memerlukan akses dari negara tersebut.
  • Pemisahan infrastruktur. Ketika beberapa layanan independen (pengumpulan, pemantauan penyebutan, analitik) hidup di satu server, satu-satunya IP menjadi titik kegagalan bersama untuk semua integrasi sekaligus.
  • Kerja dengan akun pribadi. Untuk moderasi, pengelolaan komunitas, dan aktivitas SMM yang sah dari beberapa profil, kombinasi "akun โ†” IP tetap" adalah kebersihan dasar. Di sini, residential proxies dengan sesi sticky sangat sesuai.

Namun, apa yang tidak dapat dilakukan oleh proxy: tidak melegalkan pengumpulan komersial yang menghindari kontrak, tidak menghapus batas listing 1000 elemen, dan tidak membatalkan Disallow: / di robots.txt. Pendekatan umum untuk bekerja dengan batasan platform โ€” dalam analisis tentang pembatasan laju di API dan peran proxy.

Kesimpulan

Reddit pada tahun 2026 secara resmi berhenti menjadi "dataset terbuka yang dapat diambil dengan .json". Skema kerja terlihat seperti ini: akses OAuth resmi + pembatas yang adil di header + rotasi token sesuai aturan + indeks eksternal untuk sejarah. Proxy dalam skema ini bertanggung jawab atas ketersediaan dan geografi, bukan untuk menghindari kuota โ€” dan itu adalah satu-satunya peran di mana mereka memberikan hasil yang dapat diprediksi.

Jika proyek Anda bersifat komersial, rencanakan anggaran untuk kontrak dengan Reddit sebelumnya: sejarah hukum dengan Perplexity, Oxylabs, dan SerpApi menunjukkan bahwa platform siap mengeluarkan lebih banyak untuk melindungi data mereka daripada biaya akses yang sah.

```