Jawaban singkat
Bagaimana cara mengubah halaman web menjadi Markdown untuk LLM?
Ambil halaman, pertahankan hanya konten utamanya, lalu ubah heading, daftar, tabel, dan tautan menjadi Markdown dan batasi panjangnya sesuai batas model Anda. Anda dapat melakukannya secara manual, dengan library open-source, atau dengan satu panggilan API: WebReaderAPI mengembalikan Markdown dan metadata untuk satu kredit per halaman, mulai dari US$0,07/1K halaman per Oktober 2026. Tanpa KYC; bayar dengan kripto.
Tiga cara mendapatkan Markdown dari halaman web
| Secara manual | Copy teks dari browser atau reader view-nya; cukup untuk beberapa halaman |
|---|---|
| Library open-source | Readability, Trafilatura, MarkItDown atau Crawl4AI di dalam fetcher Anda sendiri |
| Web reader API | GET https://webreaderapi.com/api/v1/read?url=… mengembalikan Markdown, judul, penulis, dan tanggal |
| Kontrol panjang | max_chars pada WebReaderAPI, atau potong teksnya sendiri setelah konversi |
| Halaman JavaScript | Perlu browser headless; WebReaderAPI merendernya saat diperlukan, dengan 2 kredit |
Metode mana yang harus saya pakai?
Pilih berdasarkan volume dan seberapa besar infrastruktur yang ingin Anda jalankan.
| Metode | Cocok untuk | Yang Anda tangani |
|---|---|---|
| Salin dan tempel | Beberapa halaman, prompt sekali pakai | Membersihkan secara manual |
| Library di kode Anda | Volume tetap, kontrol penuh | Fetching, browser, robots.txt, PDF, retry |
| Web reader API | Agen dan pipeline yang membaca banyak situs | Hanya request dan hasilnya |
Library memberi Anda kontrol tanpa biaya per halaman. Biayanya bersifat operasional: browser headless untuk halaman JavaScript, pengecekan robots.txt, penanganan character set dan redirect, serta jalur terpisah untuk PDF. API melipat semua itu menjadi satu panggilan HTTP.
Apa yang harus dipertahankan Markdown yang baik, dan apa yang harus dibuang?
Markdown yang baik mempertahankan setiap elemen yang membawa makna dan membuang semua yang hanya ada untuk tata letak atau pemasaran.
- Pertahankan heading sebagai
#,##, dan###: heading memberi tahu model, dan chunker Anda, di mana setiap topik dimulai. - Pertahankan list dan tabel sebagai list Markdown dan pipe table, agar langkah dan angka tetap terbaca.
- Pertahankan link sebagai
[text](url): link memungkinkan asisten mengutip dan mengikuti sumbernya. - Pertahankan code block dengan fence, beserta bahasanya jika halaman menampilkannya.
- Buang menu, notifikasi cookie, iklan, widget related-post, dan footer: semuanya berulang di setiap halaman dan mengotori retrieval.
Periksa hasilnya pada beberapa halaman asli Anda. Alat ekstraksi paling sering berbeda pendapat pada forum, tabel panjang, dan halaman dengan beberapa artikel.
Seberapa lebih kecil Markdown dibandingkan HTML?
Biasanya jauh lebih kecil, karena perabot halaman dan markup hilang. Saat Cloudflare meluncurkan fitur Markdown for Agents pada 12 Februari 2026, halaman contohnya turun dari 16.180 token sebagai HTML menjadi 3.150 token sebagai Markdown, sekitar 80% lebih sedikit.
Rasio Anda sendiri bergantung pada situsnya. Artikel panjang menyusut lebih sedikit, secara persentase, dibandingkan halaman pendek yang dibungkus template berat. Ukur pada sumber Anda sebelum menentukan anggaran.
Bagaimana cara menjaga halaman tetap dalam anggaran token model saya?
Batasi teks sebelum mencapai model, lalu bagi sisanya berdasarkan heading. Dengan WebReaderAPI, parameter max_chars memotong Markdown pada panjang tertentu, antara 1.000 dan 500.000 karakter. Field word_count memberi tahu Anda seberapa panjang artikel lengkapnya, sehingga agen dapat memutuskan apakah membaca sisanya sepadan.
Untuk retrieval, bagi berdasarkan heading terlebih dahulu, baru potong bagian yang panjang. Chunk yang dimulai dengan heading-nya sendiri mempertahankan topiknya; chunk yang dipotong di tengah kalimat dari halaman panjang tidak.
import os
import re
import requests
API = "https://webreaderapi.com/api/v1/read"
HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}
def page_to_chunks(url, max_chars=60000, chunk_len=1500):
params = {"url": url, "format": "markdown", "max_chars": max_chars}
resp = requests.get(API, headers=HEADERS, params=params, timeout=90)
data = resp.json()
if resp.status_code != 200:
print("not read:", data["error"]["code"])
return []
chunks = []
for section in re.split(r"\n(?=#{1,3} )", data["markdown"]):
section = section.strip()
while section:
chunks.append(section[:chunk_len])
section = section[chunk_len:]
return [{"text": c, "source": data["final_url"], "title": data["title"]} for c in chunks]
if __name__ == "__main__":
for chunk in page_to_chunks("https://example.com/guides/compost")[:3]:
print(chunk["title"], "|", chunk["text"][:80])
Apa yang biasanya salah, dan bagaimana cara mengenalinya?
Empat masalah menyebabkan sebagian besar konversi yang buruk:
- Output kosong. Halaman membangun kontennya dengan JavaScript. Cari
word_countyang rendah; render halaman di browser, atau setrender=true. - Teks cookie atau consent di hasil. Ekstraktor mempertahankan banner. Utamakan ekstraksi konten utama dan periksa baris pertama setiap hasil.
- Tabel hilang. Sebagian situs menggambar tabel sebagai gambar atau elemen canvas; tidak ada ekstraktor teks yang bisa membacanya.
- Penolakan, bukan halaman. Situs melarang robots di robots.txt atau menolak request. Hormati itu: minta akses ke pemiliknya, atau gunakan API resmi atau feed jika situs menyediakannya.
Tidak satu pun dari ini diperbaiki dengan retry lebih cepat. Baca error-nya, lalu ubah metode atau sumbernya.
Halaman web ke Markdown: pertanyaan umum
Apakah Markdown lebih baik daripada plain text untuk LLM?
Untuk sebagian besar halaman, ya. Markdown mempertahankan heading, list, tabel, dan link dengan biaya token yang kecil, sehingga model dapat melihat struktur dan mengutip sumber. Plain text sedikit lebih pendek tetapi kehilangan struktur itu.
Bisakah saya mengonversi seluruh situs web, bukan hanya satu halaman?
Bisa. Crawl situsnya dan konversi setiap halaman. Crawl API milik WebReaderAPI melakukan keduanya dalam satu job: Crawl satu situs web per job, hingga 10.000 halaman, mengikuti sitemap, robots.txt dan Crawl-delay-nya.
Bisakah saya mengonversi PDF dengan cara yang sama?
Bisa, dengan mengirim URL PDF ke endpoint yang sama. File PDF hingga 20 MB dan 100 halaman dikonversi menjadi Markdown, dengan 1 kredit per blok 10 halaman yang dimulai.
Bagaimana dengan halaman di balik login?
Jangan konversi halaman itu melalui layanan pihak ketiga kecuali halaman itu milik Anda sendiri dan Anda telah mengekspornya sendiri. WebReaderAPI hanya membaca halaman publik dan tidak pernah login ke akun.
Apakah ada cara gratis untuk melakukan ini?
Library open-source gratis digunakan dan berjalan di mesin Anda sendiri. WebReaderAPI tidak memiliki tier gratis; paket terkecilnya 10.000 halaman untuk US$3,75, dibayar dengan kripto tanpa KYC.
Sumber (1)
- Memperkenalkan Markdown for Agents — Cloudflare (2026-02-12)