Test
10 000 stron
3,75 USD
0,38 USD/1K stron
- Wypróbuj na swoich prawdziwych URL-ach
- To samo API co w największym pakiecie
- Kredyty nigdy nie wygasają
POST /crawl · do 10 000 stron na zadanie · przestrzegane robots.txt i Crawl-delay
Podaj URL startowy i limit stron. Crawler podąża za sitemap strony i linkami w obrębie tej samej domeny, odczytuje każdą stronę jako Markdown i zwraca wyniki strona po stronie. Jeden kredyt za stronę.
Szybka odpowiedź
Jak mogę scrawlować całą stronę internetową i otrzymać każdą stronę jako Markdown?
Użyj Crawl API: wysyłasz URL startowy i limit, a ono zwraca każdą stronę witryny jako Markdown. WebReaderAPI scrawluje do 10 000 stron na zadanie w obrębie jednej domeny, przestrzega sitemap, robots.txt i Crawl-delay, a pobiera jeden kredyt za odczytaną stronę, od 0,07 USD/1K stron według stanu na październik 2026. Strony odrzucone przez robots.txt są bezpłatne. Bez KYC; płatność kryptowalutą.
| Rozpocznij crawling | POST https://webreaderapi.com/api/v1/crawl z url, limit, max_depth, include_paths, exclude_paths |
|---|---|
| Pobierz wyniki | GET https://webreaderapi.com/api/v1/jobs/{job_id}, paginowane kursorem |
| Zakres | Crawling jednej witryny na zadanie, do 10 000 stron, zgodnie z jej sitemapą, jej robots.txt i jej Crawl-delay |
| Wiele osobnych URL-i | POST https://webreaderapi.com/api/v1/batch: Do 100 URL-i na jedno zadanie wsadowe |
| Rozliczanie | 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ą |
| Właściciele stron | Respektujemy robots.txt: nasz crawler identyfikuje się jako WebReaderAPI, przestrzega reguł napisanych dla niego lub dla wszystkich robotów i nie czyta strony, której witryna zabrania. Odrzucone strony nie są obciążane opłatą |
| Cena | 14,25 USD za 50 000 stron, 50 USD za 500 000 stron |
Crawling to zadanie działające w tle, ponieważ odczyt setek stron trwa dłużej, niż powinno jedno zapytanie HTTP.
POST https://webreaderapi.com/api/v1/crawl z adresem startowym i Twoimi limitami. Od razu otrzymujesz job_id.max_depth./read: Markdown, główna treść, renderowanie, gdy jest potrzebne.GET https://webreaderapi.com/api/v1/jobs/{job_id} i przeglądaj wyniki za pomocą kursora, gdy zadanie trwa lub gdy jest już done.Zadanie zatrzymuje się na Twoim limicie limit, więc nigdy nie płacisz za więcej stron, niż zamówiłeś.
import os
import pathlib
import re
import time
import requests
API = "https://webreaderapi.com/api/v1"
HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}
job = requests.post(
API + "/crawl",
headers=HEADERS,
json={"url": "https://docs.example.com/", "limit": 500, "max_depth": 4, "include_paths": ["/guide/*"]},
timeout=60,
).json()
out = pathlib.Path("docs_md")
out.mkdir(exist_ok=True)
cursor, delay = None, 5
while True:
params = {"cursor": cursor} if cursor else {}
page = requests.get(API + "/jobs/" + job["job_id"], headers=HEADERS, params=params, timeout=60).json()
for item in page.get("results", []):
if "markdown" in item:
name = re.sub(r"[^a-z0-9]+", "-", item["url"].lower()).strip("-")[:120]
(out / (name + ".md")).write_text(item["markdown"], encoding="utf-8")
cursor = page.get("next_cursor")
if page["status"] == "done" and not cursor:
break
if not cursor:
time.sleep(delay)
delay = min(delay * 2, 60)
print("credits used:", page.get("credits_used"))
Trzyma się domeny adresu startowego i pomija wszystko, czego witryna zabrania robotom. Szczegóły:
WebReaderAPI lub dla wszystkich robotów są pomijane i nie są naliczane.include_paths i exclude_paths przyjmują proste wzorce, takie jak /blog/*; użyj ich, aby pominąć strony tagów, strony wyszukiwania i archiwa.Użyj crawlowania, gdy znasz witrynę, ale nie strony; użyj wsadu, gdy masz już listę adresów URL. Crawling odkrywa strony z sitemap i linków. Wsad odczytuje dokładnie te adresy URL, które wyślesz, do 100 na zadanie, w dowolnej liczbie witryn.
Do cotygodniowego odświeżania bazy wiedzy częsty wzorzec to jedno crawlowanie w celu zbudowania indeksu, a następnie wsady stron, których lastmod zmienił się w sitemap. Dzięki temu cotygodniowy koszt obejmuje tylko strony, które faktycznie się zmieniły.
Jeden kredyt za odczytaną stronę, dwa za strony, które wymagały przeglądarki. Witryna dokumentacji z 1500 stronami renderowana na serwerze kosztuje 1500 kredytów; ta sama witryna zbudowana jako aplikacja jednostronicowa może kosztować do 3000.
Trzy typowe zadania, na październik 2026: podręcznik produktu z 300 stronami mieści się w pakiecie 10 000 stron (3,75 USD); dziesięć witryn dokumentacji po 2000 stron każda mieści się w 50 000 stron (14,25 USD); archiwum z 400 000 stronami mieści się w 500 000 stron (50 USD). Pominięte i nieudane strony są bezpłatne.
Dobierz rozmiar pakietu do liczby stron, a następnie dodaj margines na strony wymagające przeglądarki. Kredyty nigdy nie wygasają, więc reszta posłuży do następnego crawlowania.
10 000 stron
3,75 USD
0,38 USD/1K stron
50 000 stron
14,25 USD
0,28 USD/1K stron
100 000 stron
21,75 USD
0,22 USD/1K stron
500 000 stron
50 USD
0,10 USD/1K stron
W każdym planie: Wyodrębnianie głównej treści · Renderowanie JavaScript, gdy potrzebne · Nieudane i odrzucone strony bez opłat · Kredyty nigdy nie wygasają
Do 10 000 stron na zadanie, w obrębie domeny adresu startowego. W przypadku większej witryny podziel ją na kilka zadań za pomocą include_paths, na przykład po jednym na sekcję.
Tak. Odczytuje sitemap wymienioną w robots.txt lub w zwykłym miejscu, a następnie podąża za linkami na odczytywanych stronach. Strony wymienione tylko w sitemap są nadal odczytywane, jeśli robots.txt na to pozwala.
Nie z WebReaderAPI. Jeśli robots.txt zabrania naszemu crawlerowi lub wszystkim robotom, te strony są pomijane i nie są naliczane. Jeśli witryna deklaruje Content-Signal: ai-input=no, nie odczytujemy jej dla Ciebie. Nigdy nie próbujemy obejść takich decyzji.
Tak. GET https://webreaderapi.com/api/v1/jobs/{job_id} zwraca odczytane dotąd strony wraz z kursorem; kontynuuj stronicowanie, aż zadanie będzie w stanie done i nie pozostanie żaden kursor.
Nie. Kredyty są liczone strona po stronie, a zadanie zatrzymuje się, gdy osiągnie ustawiony przez Ciebie limit limit. Strony pominięte z powodu robots.txt oraz strony, które zakończyły się niepowodzeniem, nie zużywają kredytów.
Od 0,07 USD/1K stron · bez KYC
Uzyskaj klucz API