Jak skonfigurować proxy w Apify

Własne proxy w Apify: sekcja Proxy and browser configuration w Actorze, parametr proxyUrls w kodzie i port do rotacji albo sesji.

Zaktualizowano · Redakcja Prokso

Dane do połączenia
Host
gw.prokso.com
Port
823 HTTP · 824 SOCKS5 — nowy IP przy każdym żądaniu · 10000–20000 stały IP na całą sesję, HTTP(S) i SOCKS5
Login i hasło
w panelu klienta, na stronie planu

Gotowe wiersze w potrzebnym formacie wygenerujesz w panelu klienta: wybierz kraj, typ IP i protokół.

W skrócie
  • Host gw.prokso.com, porty 823 (HTTP), 824 (SOCKS5), 10000–20000 (sesje ze stałym IP, HTTP lub SOCKS5)
  • Login i hasło znajdziesz w panelu klienta na stronie planu
  • Po konfiguracji sprawdź swój IP na stronie Mój IP

Instrukcja krok po kroku, jak podłączyć proxy Prokso w Apify. Zajmie to kilka minut.

Krok 1. Pobierz dane proxy z panelu klienta

Otwórz swój plan i skopiuj host gw.prokso.com, port, login i hasło. Port 823 to HTTP, a 824 to SOCKS5 (oba dają nowy IP przy każdym żądaniu); porty 10000–20000 utrzymują jeden IP przez całą sesję do 120 minut i działają zarówno jako HTTP, jak i SOCKS5 (każdy port to osobny adres). Kraj ustawiasz w loginie: username__cr.ua.

Blok „Dostęp” na stronie planu: host, porty, login i hasło do linii proxy
Blok „Dostęp” na stronie planu: host, porty, login i hasło do linii proxy

Krok 2. Gotowy Actor: wpisz własne proxy

Otwórz potrzebnego Actora w Apify Console, przejdź na kartę Input i znajdź sekcję Proxy and browser configuration. Wybierz opcję z własnymi proxy i wklej URL w formacie http://USERNAME:PASSWORD@gw.prokso.com:823.

Krok 3. Własny kod: przekaż proxyUrls

We własnym Actorze utwórz konfigurację proxy przez Actor.createProxyConfiguration z parametrem proxyUrls, a potem przekaż ją do crawlera.

import { Actor } from "apify";
import { HttpCrawler } from "crawlee";

await Actor.init();

const proxyConfiguration = await Actor.createProxyConfiguration({
    proxyUrls: ["http://USERNAME:PASSWORD@gw.prokso.com:823"],
});

const crawler = new HttpCrawler({
    proxyConfiguration,
    additionalMimeTypes: ["application/json"],
    async requestHandler({ json }) {
        console.log(json);
    },
});

await crawler.run(["https://api.ipify.org?format=json"]);
await Actor.exit();

Krok 4. Dobierz port do zadania

Port 823 daje nowy adres przy każdym żądaniu i rozkłada żądania na wiele IP. Jeśli crawler potrzebuje sesji z jednym adresem, dodaj do proxyUrls kilka URL z portami ze stałym IP 10000–20000: Apify będzie je rotować.

Krok 5. Sprawdź log uruchomienia

Uruchom Actora: przykład wywołuje https://api.ipify.org i zapisuje w Log IP, który widzi strona. Powinien to być adres proxy. Jeśli log pokazuje błąd połączenia z proxy, sprawdź login, hasło i port.

Actory działają w chmurze

Actor działa na serwerach Apify, a nie na Twoim komputerze. Dlatego lista dozwolonych IP (bez hasła) się tu nie sprawdzi: nie znasz adresów chmury, a one się zmieniają. Użyj adresu proxy z loginem i hasłem.

Z tego samego powodu IP trzeba sprawdzać w logu uruchomienia, a nie we własnej przeglądarce.

Sesje i rotacja w Crawlee

Na porcie 823 każde żądanie wychodzi z nowego IP, więc do rotacji nie potrzebujesz osobnej puli sesji. Jeśli strona wymaga, żeby seria żądań przychodziła z jednego adresu, przekaż w proxyUrls kilka adresów z portami ze stałym IP: Crawlee przypisze adres do sesji i zmieni go, gdy sesja zostanie oznaczona jako nieudana.

Ogranicz liczbę ponowień parametrem maxRequestRetries: każde ponowienie to kolejne żądanie i dodatkowy transfer.

Jak zużywać mniej transferu

Wybierz najlżejszy crawler, który poradzi sobie z zadaniem. HttpCrawler i CheerioCrawler pobierają tylko HTML. Crawlery przeglądarkowe ładują całą stronę i zużywają kilka razy więcej, więc zostaw je dla stron, które nie działają bez JavaScriptu. Wielkość transferu pomoże Ci oszacować kalkulator transferu.

Jeśli proxy nie działa

Pytania i odpowiedzi (FAQ)

Czy potrzebuję subskrypcji Apify Proxy?

Nie. Własne proxy są używane zamiast wbudowanego proxy Apify; płacisz tylko za transfer w swoim planie Prokso.

Jaki typ proxy wybrać dla Apify?

Do stron ze słabą ochroną wystarczą proxy serwerowe – są najtańsze. Jeśli strona blokuje adresy serwerowe, użyj proxy rezydencjalnych.

Gdzie przechowywać login i hasło do proxy?

Nie w kodzie. Użyj tajnych pól wejściowych Actora albo zmiennych środowiskowych oznaczonych jako tajne.

Actor odpowiada błędem 407. Co sprawdzić?

Login i hasło w adresie proxy, zakodowanie znaków specjalnych oraz pozostały transfer w planie.