Bez KYC — bez dowodu, bez selfie, bez dokumentów. Płatność kryptowalutą: BTC, USDT, USDC, ETH, SOL, LTC
Język: Polski
Uzyskaj klucz API

Dokumentacja · curl

Konwersja strony internetowej do Markdown za pomocą curl i jq

Wszystko, co robi API, mieści się w jednej linii powłoki. Te przepisy używają curl do wywołania API i jq do wybierania pól z JSON, z wersją dla PowerShell na Windows na końcu.

Ostatnia aktualizacja: · 3 min czytania

Szybka odpowiedź

Jak przekonwertować stronę internetową do Markdown z wiersza poleceń?

Uruchom curl -sG https://webreaderapi.com/api/v1/read --data-urlencode "url=…" ze swoim kluczem w nagłówku Authorization: Bearer, a następnie przekaż odpowiedź do jq -r .markdown. WebReaderAPI zwraca główną treść strony jako Markdown wraz z metadanymi. Jedna zwykła strona zużywa 1 kredyt, od 0,07 USD/1K stron według stanu na październik 2026. Bez KYC; płatność kryptowalutą.

Jak skonfigurować terminal?

Zainstaluj curl i jq, które ma już większość systemów Linux i macOS, i wyeksportuj swój klucz raz na sesję. Każdy z poniższych przepisów odczytuje go z $WEBREADER_API_KEY, więc klucz nigdy nie pojawia się w historii powłoki jako część polecenia.

Użyj -G z --data-urlencode do zapytań GET: curl sam zakoduje adres strony, co ma znaczenie, bo adresy zawierają własne ?, & i =.

Ustaw klucz i zapisz jedną stronę jako plik .md
export WEBREADER_API_KEY="your-key"

curl -sG "https://webreaderapi.com/api/v1/read" \
  -H "Authorization: Bearer $WEBREADER_API_KEY" \
  --data-urlencode "url=https://example.com/guides/compost" \
  | jq -r '.markdown' > compost.md

Jak sprawdzić, co zwróciło wywołanie i ile kosztowało?

Poproś jq o metadane zamiast treści. final_url pokazuje, dokąd prowadziły przekierowania, rendered mówi, czy użyto przeglądarki, a credits_used to koszt wywołania. Jeśli odpowiedź jest błędem, ten sam filtr wypisuje pola null; wypisz .error, aby odczytać kod i komunikat.

Tylko metadane albo błąd, jeśli wystąpił
curl -sG "https://webreaderapi.com/api/v1/read" \
  -H "Authorization: Bearer $WEBREADER_API_KEY" \
  --data-urlencode "url=https://example.com/guides/compost" \
  | jq '.error // {title, final_url, rendered, credits_used, word_count}'

Jak wylistować linki ze strony?

Dodaj include_links=true i zamień listę links na wiersze rozdzielone tabulatorami. To daje szybką mapę linków wychodzących ze strony, którą możesz posortować, przefiltrować za pomocą grep lub przekazać do zadania wsadowego.

Linki jako tekst i URL, po jednym w wierszu
curl -sG "https://webreaderapi.com/api/v1/read" \
  -H "Authorization: Bearer $WEBREADER_API_KEY" \
  --data-urlencode "url=https://example.com/docs/" \
  -d include_links=true \
  | jq -r '.links[] | "\(.text)\t\(.url)"' | sort -u

Jak odczytać stronę z JavaScript lub PDF?

Dodaj -d render=true dla strony, która buduje treść za pomocą JavaScript; kosztuje wtedy 2 kredyty. PDF nie wymaga niczego specjalnego: wyślij jego URL, a tekst wróci w markdown. Pliki PDF do 20 MB i 100 stron są konwertowane do Markdown, po 1 kredycie za każdy rozpoczęty blok 10 stron.

Wyrenderowana strona, potem PDF
curl -sG "https://webreaderapi.com/api/v1/read" -H "Authorization: Bearer $WEBREADER_API_KEY" \
  --data-urlencode "url=https://example.com/app/changelog" -d render=true \
  | jq -r '.markdown' > changelog.md

curl -sG "https://webreaderapi.com/api/v1/read" -H "Authorization: Bearer $WEBREADER_API_KEY" \
  --data-urlencode "url=https://example.com/files/annual-report.pdf" \
  | jq -r '.markdown' > annual-report.md

Jak uruchomić zadanie wsadowe z powłoki?

Wyślij treść JSON ze swoimi URL-ami do /batch, zachowaj job_id, a potem odczytaj zadanie. Mała pętla czeka, aż zadanie będzie done, i wypisuje tytuł lub kod błędu każdej strony. W przypadku długich zadań śledź next_cursor, jak pokazano na stronie batch i crawl.

Partia trzech URL-i, potem czekanie na wynik
JOB=$(curl -s "https://webreaderapi.com/api/v1/batch" \
  -H "Authorization: Bearer $WEBREADER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"urls": ["https://example.com/a", "https://example.com/b", "https://example.com/c"]}' \
  | jq -r '.job_id')

until [ "$(curl -s "https://webreaderapi.com/api/v1/jobs/$JOB" -H "Authorization: Bearer $WEBREADER_API_KEY" | jq -r '.status')" = "done" ]; do
  sleep 5
done

curl -s "https://webreaderapi.com/api/v1/jobs/$JOB" -H "Authorization: Bearer $WEBREADER_API_KEY" \
  | jq -r '.results[] | "\(.url)\t\(.title // .error.code)"'

Jak sprawdzić swoje kredyty?

Wywołaj /credits; jest bezpłatne. Zwraca credits_remaining, credits_used_today i Twoje concurrency_limit. Przedpłacone kredyty nigdy nie wygasają: niewykorzystane strony pozostają na Twoim koncie, dopóki ich nie wykorzystasz.

Pozostałe kredyty
curl -s "https://webreaderapi.com/api/v1/credits" -H "Authorization: Bearer $WEBREADER_API_KEY" | jq '.credits_remaining'

Jaka jest wersja dla PowerShell na Windows?

Invoke-RestMethod sam parsuje JSON, więc jq nie jest potrzebne. Zbuduj zapytanie za pomocą [uri]::EscapeDataString, aby zakodować adres strony, i przekaż klucz w tabeli nagłówków.

PowerShell: zapisz jedną stronę
$headers = @{ Authorization = "Bearer $env:WEBREADER_API_KEY" }
$target = [uri]::EscapeDataString('https://example.com/guides/compost')
$page = Invoke-RestMethod -Uri "https://webreaderapi.com/api/v1/read?url=$target" -Headers $headers
$page.markdown | Out-File -Encoding utf8 compost.md
"$($page.title): $($page.word_count) words, $($page.credits_used) credit(s)"

curl: najczęstsze pytania

Dlaczego mój URL ze znakiem & nie działa?

Bo powłoka lub curl go rozdziela. Ujmij cały argument url=… w cudzysłowy i przekaż go z --data-urlencode, jak w powyższych przepisach; curl zakoduje wtedy &, ? i = wewnątrz adresu strony.

Jak zobaczyć status HTTP błędu?

Dodaj -w '\n%{http_code}\n', aby wypisać go po treści, lub -i, aby zobaczyć wszystkie nagłówki. error.code w treści to stabilna wartość do testowania w skryptach.

Czy nieudane wywołanie jest płatne?

Nie. 1 kredyt = 1 odczytana strona bez przeglądarki; 2 kredyty, gdy strona wymaga przeglądarki do wyrenderowania JavaScript. Zapytanie, które się nie powiedzie lub które zostanie odrzucone przez robots.txt witryny, nie jest obciążane opłatą.

Od 0,07 USD/1K stron · bez KYC

Uzyskaj klucz API