Ty wysyłasz URL, my przynosimy stronę, która odpowiedziała 403: IP rezydencjalne, fingerprint TLS prawdziwej przeglądarki, nowe wyjście przy każdej odmowie i prawdziwa przeglądarka, gdy strona wymaga JavaScriptu. Odpowiedź niesie status, próby, czas i koszt, więc zawsze wiesz, co się stało.
Zmierzone 2026-11-11 przez nasz własny canary: 72 z 81 wywołań. Strony demo z captchą są uruchamiane, ale nie liczone, bo interaktywne captche nie są rozwiązywane.

403
403, kontrolę bezpieczeństwa albo wyzwanie JavaScript zamiast strony, choćby IP było czyste i jakikolwiek User-Agent byś ustawił.
200
88.9% z 81 wywołań do 27 chronionych celów wróciło jako prawdziwa strona: mediana 4.1 s, p95 28.8 s.
Nasz własny canary, nie liczba z broszury: te same cele, po 3 przebiegi każdy. Przebieg jest powtarzany, a każda liczba na tej stronie jest generowana na nowo z jego pliku.
Wygenerowane z przebiegu canary z 2026-11-11, 3 przebiegi na tych samych celach. Strony z interaktywną captchą są wyłączone.
| System anti-bot | Skuteczność | Mediana czasu | Wywołania |
|---|---|---|---|
| Cloudflare | 100% | 8.9 s | 9 |
| DataDome | 91.7% | 10.4 s | 12 |
| Akamai | 75% | 2.4 s | 12 |
| PerimeterX / HUMAN | 100% | 1.8 s | 9 |
| Kasada | 100% | 16.1 s | 6 |
| F5 BIG-IP | 100% | 3.4 s | 6 |
| Imperva | 83.3% | 7.4 s | 6 |
| AWS WAF | 66.7% | 14.3 s | 6 |
| Amazon | 66.7% | 4.1 s | 3 |
| 66.7% | 7.5 s | 3 | |
| Other sites | 100% | 2.0 s | 6 |
| 100% | 1.7 s | 3 |
Te liczby pochodzą z naszego własnego canary, przebiegu powtarzanego na tych samych stronach. Ruch klientów nigdy nie jest jego częścią.
Ostatni przebieg: 2026-11-11. Strony: 27, przebiegi na stronę: 3, wywołania: 81, prawdziwe strony: 72 (88.9%).
Trzy produkty dzielą tę samą sieć rezydencjalną. Który wywołać, zależy od tego, co cel robi z Twoim żądaniem.
Strona odrzuca Twojego klienta kodem 403, kontrolą bezpieczeństwa albo wyzwaniem: jedno wywołanie przynosi prawdziwą odpowiedź, dowolną metodą, z Twoimi nagłówkami i body, z logowaniem lub koszykiem trzymanymi na jednym wyjściu, rozliczane za GB z przedpłaconego salda.
Twój klient już przechodzi i potrzebujesz tylko innego IP: wyjście rezydencjalne z tą samą gramatyką nazwy użytkownika (kraj, stan, miasto, sesja) przez HTTP lub SOCKS5.
Chcesz stronę jako Markdown, tekst lub JSON i nie potrzebujesz surowej odpowiedzi, POST-a ani własnego cookie jar.
Ten sam silnik za trzema drzwiami. Wybierz według tego, czym już mówi Twój kod; snippety to te, które panel wypełnia Twoimi własnymi danymi.
Możesz zmienić swój kod: jedno wywołanie JSON na wejściu, jedna odpowiedź JSON na wyjściu, żadnego certyfikatu do instalacji.
POST https://app.quantumproxies.io/api/v1/scraper/unlock
curl -X POST https://app.quantumproxies.io/api/v1/scraper/unlock \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/", "country": "us"}'
Masz już scraper, który mówi proxy: skieruj go na host i port z użytkownikiem i hasłem unlockera i zainstaluj CA raz.
http://unlock.quantumproxies.io:9000
# once: curl -o unlocker-ca.pem https://app.quantumproxies.io/api/v1/scraper/unlock/ca
curl --proxy http://unlock.quantumproxies.io:9000 \
--proxy-user "USER:PASS" \
--cacert unlocker-ca.pem \
https://example.com/
Proxy bez certyfikatu: wyślij żądanie do http://unlock/ przez proxy i wskaż cel w nagłówku x-qp-url.
http://unlock.quantumproxies.io:9000, then http://unlock/
curl --proxy http://unlock.quantumproxies.io:9000 \
--proxy-user "USER:PASS" \
-H "x-qp-url: https://example.com/" \
http://unlock/
W wywołaniu REST możesz wypisać, co przeglądarka robi przed przechwyceniem strony: kliknięcie, wpisanie tekstu, przewinięcie, czekanie.
Wyślij do 100 adresów URL w jednej paczce i odbierz webhook, gdy się zakończą.
Sam ustawiasz, jak długo strona zostaje w cache. Dopóki tam jest, ponowne żądanie tej samej strony nic nie kosztuje.
W dokumentacji są dwa jednoplikowe klienty, jeden dla Node.js i jeden dla Pythona, oraz tabela migracji dla kodu napisanego pod inny unlocker.
Otwórz dokumentację Web Unlockera
Przegląd strony Web Unlocker w panelu: kup GB, wybierz sposób połączenia i wyślij pierwsze żądanie. Po angielsku, z napisami.
Nagłówki tożsamości wysyłane przez Twojego klienta (User-Agent, Accept, Sec-Fetch-*) są zastępowane zestawem zgodnym z uściskiem dłoni TLS prawdziwej przeglądarki. Authorization, cookies, content type i własne nagłówki przechodzą nietknięte.
Wyzwanie lub 403 uruchamia ponowną próbę na nowym wyjściu pod inną rodziną fingerprintów, do trzech prób TLS, wszystkie w jednym budżecie czasu: domyślnie 60 sekund, do 120 z timeout_ms.
Gdy poziom TLS wciąż dostaje wyzwania, prawdziwa przeglądarka otwiera stronę i odpowiada na wyzwanie JavaScript. Ze sticky sesją uzyskany clearance jest zachowywany i odtwarzany przy Twoich kolejnych żądaniach do tej strony.
Web Unlocker API jest dla stron, których zwykły klient HTTP nie dostanie: tych, gdzie warstwa anti-bot ocenia uścisk dłoni TLS i ustawienia HTTP/2, zanim przeczyta choć jeden nagłówek. Wywołanie fetch lub requests niesie sygnaturę swojego środowiska, jakikolwiek User-Agent by ustawiło. Unlocker naprawia to w warstwie transportowej, ponawia próbę na świeżym wyjściu rezydencjalnym, gdy origin odmawia, otwiera prawdziwą przeglądarkę, gdy wymagany jest JavaScript, i oddaje surową odpowiedź origin: dowolna metoda, Twoje nagłówki i body, logowanie lub koszyk trzymane na jednym IP wyjściowym.
Rotujące proxy rezydencjalne zmienia, skąd pochodzi żądanie. Nie zmienia tego, jak żądanie wygląda: uścisk dłoni TLS, kolejność ramek HTTP/2 i zestaw nagłówków nadal mówią Python albo Node, a nowoczesne zapory anti-bot oceniają dokładnie to. Web unlocker przepisuje żądanie na takie, jakie wysłałaby prawdziwa przeglądarka, ponawia próbę pod innym fingerprintem, gdy origin je odrzuca, i przełącza się na prawdziwą przeglądarkę, gdy origin wymaga JavaScriptu. Zachowujesz interfejs proxy; unlocker dodaje osąd.
Każda próba wychodzi pod profilem TLS prawdziwej przeglądarki, z nagłówkami tożsamości przepisanymi tak, by do niego pasowały, bo uścisk dłoni Chrome niosący User-Agent Firefoksa jest głośniejszym sygnałem niż każdy z nich osobno. Przypnij profil (Chrome, Firefox, Safari, Safari iOS, Edge, Brave albo mobilne Safari na endpoincie REST), gdy strona go oczekuje; nie przypinaj żadnego, a ponowne próby rotują między Chrome, Firefoksem i Brave, więc strona, która spaliła jeden uścisk dłoni, spotyka inny. Authorization, Cookie, Content-Type i własne nagłówki X-* są przekazywane dosłownie, a keepHeaders wysyła Twoje bez zmian, gdy odtwarzasz przechwycone żądanie aplikacji.
mode auto, domyślny, wspina się po drabinie: najpierw poziom TLS, świeże wyjście przy odmowie, przeglądarka, gdy strona wciąż rzuca wyzwania. mode tls nigdy nie otwiera przeglądarki; mode browser zaczyna w niej. format zwraca body jako html, markdown lub text, a render png robi zrzut ekranu. Całe wywołanie, z ponownymi próbami i renderowaniem, mieści się w jednym budżecie domyślnie 60 sekund, do 120 z timeout_ms, a max_bytes ogranicza ruch, jaki jedno wywołanie może przenieść. Odpowiedź mówi, który poziom wygrał (tier_served), wylicza każdą próbę z poziomem, profilem, krajem wyjścia, wynikiem, milisekundami i bajtami (attempt_log) i podaje koszt w bajtach i dolarach po cenie Twojego poziomu.
Każda odpowiedź jest klasyfikowana, zanim do Ciebie dotrze. Klasyfikator czyta to, czym systemy obrony przed botami podpisują swoje strony, i nazywa zarówno system (Cloudflare, DataDome, Akamai, PerimeterX i inne), jak i klasę blokady: js_challenge, captcha, access_denied, rate_limited, fingerprint, geo lub timeout. Na endpoincie REST nadal zablokowana strona przychodzi jako 200 z blocked ustawionym na true i samą stroną do wglądu, albo jako 424 target_blocked, gdy ustawisz fail_on_block. Na forward proxy status origin jest przekazywany z nagłówkiem x-qp-unlocker-blocked. Interaktywne captche nie są rozwiązywane: wracają oznaczone jako captcha.
Podaj kraj, a także stan lub miasto tam, gdzie sieć je ma, by wychodzić z tego rynku. Zostaw puste, a kraj wyjścia jest czytany z domeny najwyższego poziomu celu, potem z kraju Twojego konta, a Stany Zjednoczone tylko w ostateczności. Sticky id sesji trzyma jedno IP wyjściowe między wywołaniami przez 3 do 1440 minut, więc logowanie, koszyk lub stronicowana lista zostają na jednej tożsamości. Unlocker pamięta też per domena, który poziom i która rodzina fingerprintów ostatnio przeszły, i zaczyna od nich następnym razem, a wyjście, które strona właśnie odrzuciła, odkłada na kwarantannę zamiast proponować je tej stronie ponownie.
Web Unlocker działa na dwóch pulach wyjść: Premium na IP rezydencjalnych i Mobile na IP operatorów 4G/5G, każda z własnym przedpłaconym saldem GB kupowanym w panelu od 1 GB, kartą, PayPalem, kryptowalutą lub saldem konta. Zużycie mierzy się w przeniesionych bajtach, z ponownymi próbami i renderami przeglądarki, a gdy saldo się skończy, odpowiedzią jest 402 z linkiem do doładowania zamiast cichej porażki. Cena za GB każdego poziomu jest pokazana na stronie Web Unlocker w panelu, obok przycisku zakupu. Bez abonamentu, bez minimalnego okresu.
REST i proxy dzielą jeden katalog. Każdy błąd podaje swój kod i mówi, czy warto ponowić, czy został rozliczony i co robić dalej: no_credit (402) z linkiem do zakupu, target_blocked (424) z klasą blokady i dziennikiem prób, rate_limited (429, 20 wywołań na minutę i 10 równoczesnych w pay-as-you-go, z Retry-After), render_failed i upstream_failed (503), timeout (504), gdy timeout_ms się wyczerpał. 403 lub 429 niosące prawdziwą stronę nie jest blokadą i jest zwracane jako takie.
Web unlocker to usługa, która dostarcza zwykłe żądanie HTTP do strony chronionej anti-botem tak, jak zrobiłaby to prawdziwa przeglądarka: z IP rezydencjalnego, pod fingerprintem TLS przeglądarki z pasującymi nagłówkami, ponawiając na świeżym IP przy odmowie i otwierając prawdziwą przeglądarkę do wyzwań JavaScript. Zwraca surową odpowiedź origin, z próbami i kosztem.
Proxy zmienia tylko IP źródłowe. Uścisk dłoni TLS i zestaw nagłówków Twojego klienta nadal zdradzają zautomatyzowane narzędzie, a to właśnie oceniają nowoczesne zapory anti-bot. Unlocker przepisuje żądanie na przeglądarkowe, ponawia pod innym fingerprintem przy odmowie i eskaluje do prawdziwej przeglądarki, gdy wymagany jest JavaScript. Proxy rezydencjalne to właściwy zakup, gdy Twój klient już przechodzi.
Odpowiada na wyzwania JavaScript prawdziwą przeglądarką i w sticky sesji zachowuje cookie clearance na kolejne żądania do tej strony. Interaktywne captche wymagające człowieka, jak hCaptcha, reCAPTCHA czy pole do kliknięcia, nie są rozwiązywane: odpowiedź wraca oznaczona jako captcha, z nazwanym dostawcą, a przeniesiony ruch jest rozliczany za GB, chyba że panel stanowi inaczej.
Założenie konta jest darmowe i zajmuje minutę, a strona Web Unlocker w panelu ma pole Test a URL, które pokazuje status, próby, czas i koszt wywołania. GB unlockera są przedpłacane per poziom od 1 GB, a koszt pierwszych wywołań testowych jest wypisany obok pola. Darmowy okres próbny rezydencjalny obejmuje zwykłe proxy rezydencjalne, nie unlocker.
Tak. Endpoint REST to zwykły POST HTTPS, którym mówi każdy język; zakładki powyżej zawierają te same snippety curl, Python, Node.js, PHP i Go, które panel wypełnia Twoimi danymi. Scrapy, Playwright lub dowolny klient z ustawieniem proxy używa proxy CONNECT, a tryb bezpośredni działa tam, gdzie nie da się zainstalować certyfikatu.
Jedno i drugie, na jednym koncie i jednym saldzie. REST, gdy możesz zmienić kod: JSON na wejściu, JSON na wyjściu, bez certyfikatu. Proxy, gdy Twój scraper już mówi proxy: host, port, użytkownik i hasło, z CA zainstalowanym raz. Tryb bezpośredni, gdy chcesz proxy bez certyfikatu: wyślij żądanie do http://unlock/ i wskaż cel w x-qp-url.
Nigdy nie jest zwracana jako cichy sukces. Endpoint REST ustawia blocked na true i podaje klasę blokady oraz dostawcę obok strony, albo odpowiada 424 target_blocked, gdy ustawisz fail_on_block; proxy przekazuje status origin z x-qp-unlocker-blocked. Przeniesione bajty są rozliczane za GB, chyba że panel stanowi inaczej, a dziennik prób pokazuje, co za nie kupiono.
Tak. Podaj id sesji, w body żądania lub w nazwie użytkownika proxy, a każde wywołanie z tym id wychodzi z tego samego IP przez 3 do 1440 minut. Tak logowanie, koszyk lub stronicowana lista zostają na jednej tożsamości zamiast zmieniać IP na każdej stronie.
Podaj country, a także state lub city tam, gdzie sieć je ma, a poziom Premium wychodzi z tego rynku na IP rezydencjalnych; poziom Mobile robi to samo na IP operatorów 4G/5G. Zostaw puste, a wyjście jest wybierane według domeny najwyższego poziomu celu, potem kraju Twojego konta, ze Stanami Zjednoczonymi w ostateczności.
Tylko dla HTTPS przez proxy CONNECT, które kończy TLS, by przepisać żądanie: pobierz CA raz z API swoim kluczem. Tryb bezpośredni, gdzie cel trafia do nagłówka x-qp-url, i endpoint REST nie wymagają żadnego certyfikatu.
Tak, w wywołaniu REST. Dodaj listę akcji przeglądarki (kliknięcie, wpisanie tekstu, przewinięcie, czekanie), a przeglądarka wykona je po kolei przed przechwyceniem strony.
Tak. Paczka przyjmuje do 100 adresów URL w jednym wywołaniu, a webhook informuje, gdy się zakończą.
Nie, dopóki strona jest w cache. Czas życia cache wybierasz w wywołaniu: dopóki nie minie, ta sama strona jest zwracana z cache i nic nie kosztuje.
Jest rozliczany za przeniesiony GB, z przedpłaconego salda, które kupujesz w panelu dla używanego poziomu, Premium na wyjściach rezydencjalnych lub Mobile na wyjściach operatorów, od 1 GB. Ponowne próby i rendery przeglądarki się liczą. Aktualna cena za GB jest pokazana na stronie Web Unlocker w panelu przed zakupem; bez abonamentu, bez minimalnego okresu.
Pomiń marketing. QuantumProxies.io publikuje maszynowo czytelną mapę witryny, Markdown każdej strony, darmowy serwer MCP oraz API rozliczane z tego samego salda co proxy.
Połącz jednym poleceniem: npx -y quantumproxies-mcp