Jak naprawić 429 Zbyt wiele żądań podczas zbierania danych
429 to limit szybkości, a nie ban — serwer prosi cię o spowolnienie. Trwała poprawka łączy opóźnienie, honorowanie Retry-After i rozkład obciążenia na pulę IP. Oto jak, z działającym Pythonem.
429 to limit prędkości, a nie mur
HTTP 429 Zbyt wiele żądań oznacza, że wysłałeś zbyt wiele żądań w danym oknie czasowym i serwer ogranicza twoje połączenie. Jest to celowo tymczasowe — w przeciwieństwie do twardej blokady, 429 zazwyczaj znika, gdy zwolnisz. Wiele serwerów zawiera nagłówek Retry-After, który informuje, ile dokładnie sekund należy czekać; przestrzeganie go jest najskuteczniejszym rozwiązaniem, ponieważ dostosowuje cię do własnego limitu serwera zamiast zgadywać.
Są dwa dźwignie. Pierwsza to wskaźnik: wysyłaj mniej żądań na sekundę na IP, dodawaj opóźnienia, ograniczaj równoległość i wycofuj się wykładniczo, gdy pojawi się 429. Druga to dystrybucja: rozkładaj żądania na wiele IP, aby każde pozostało poniżej limitu na IP. Kontrola wskaźnika to miejsce, w którym powinieneś zacząć — pula proxy mnoży twoją przepustowość, ale nie zwalnia cię z młotkowania strony. s4m zapewnia uwierzytelnione proxy datacenter (SOCKS5 1080, HTTP 3128, USER:PASS) do rozkładania obciążenia, a to bezpośrednio łączy się z przewodnikiem rotacji proxy i skrobaniem z żądaniami.
Szanuj Retry-After, cofnij się, a następnie rotuj
Pętla pobierania, która szanuje Retry-After, cofa się wykładniczo z jitterem i rozkłada się na pulę proxy. Zastąp USER:PASS.
import random, time
import requests
USER, PASS, HOST = "USER", "PASS", "proxy.s4m.online"
POOL = [
f"socks5h://{USER}:{PASS}@{HOST}:1080",
f"http://{USER}:{PASS}@{HOST}:3128",
]
def polite_get(url, max_tries=6):
for attempt in range(1, max_tries + 1):
proxy = random.choice(POOL)
r = requests.get(url, proxies={"http": proxy, "https": proxy},
timeout=(5, 20))
if r.status_code != 429:
r.raise_for_status()
return r
# 429: prefer the server's Retry-After, else exponential backoff
retry_after = r.headers.get("Retry-After")
if retry_after and retry_after.isdigit():
wait = int(retry_after)
else:
wait = min(2 ** attempt, 60) + random.random() # cap + jitter
print(f"[{attempt}/{max_tries}] 429; waiting {wait:.1f}s")
time.sleep(wait)
raise SystemExit(f"still rate-limited after {max_tries} tries")
# Global throttle: cap how fast you fire, independent of retries.
MIN_INTERVAL = 0.5 # seconds between requests per worker
_last = 0.0
def throttled_get(url):
global _last
delta = time.time() - _last
if delta < MIN_INTERVAL:
time.sleep(MIN_INTERVAL - delta)
_last = time.time()
return polite_get(url)
print(throttled_get("https://httpbin.org/status/200").status_code)Zamówienie na naprawę 429
Najtańsze, najbardziej szanowane poprawki najpierw.
Zachowaj Retry-After
Jeśli odpowiedź 429 zawiera nagłówek Retry-After, poczekaj dokładnie tak długo przed ponownym spróbowaniem. To serwer informuje cię o swoim limicie — przestrzeganie tego natychmiast usuwa większość 429.
Dodaj wykładnicze opóźnienie z jitterem
Gdy nie ma Retry-After, czekaj 2, 4, 8… sekund (ograniczone) plus mały losowy jitter między próbami, aby przestać bombardować i unikać zsynchronizowanych prób.
Ogranicz swoją szybkość żądań
Ogranicz liczbę żądań na sekundę i współbieżność, aby pozostać poniżej limitu. Stabilne, wolniejsze skanowanie kończy się bardziej niezawodnie niż nagły wzrost, który jest ciągle ograniczany.
Rozłóż obciążenie na IP
Gdy twoje zachowanie na żądanie jest grzeczne, rotuj przez pulę proxy, aby każde IP pozostało poniżej limitu na IP. To mnoży bezpieczny przepływ bez podnoszenia stawki na jakimkolwiek pojedynczym adresie.
Dlaczego sama rotacja nie jest odpowiedzią
Kuszące jest traktowanie proxy jako sposobu na zignorowanie limitów — wystarczy dodać więcej adresów IP i ciągle wysyłać żądania. To się nie sprawdza. Strona, która zwraca 429, obserwuje wzorce żądań, a zalew z zmieniającego się zestawu adresów trafiających w te same punkty końcowe w tym samym momencie jest sam w sobie wykrywalnym sygnaturą, która prowadzi do surowych banów. Rotacja mnoży grzeczny przepływ; nie zastępuje grzeczności. Zawsze łącz pulę proxy z opóźnieniem, Retry-After, realistycznym tempem i rozsądną równoległością.
Szczerze mówiąc, niektóre limity powinny być przestrzegane — sprawdź, czy istnieje oficjalne API lub udokumentowany limit przed skalowaniem wokół 429, i przeczytaj warunki każdej strony. Kiedy potrzebujesz dystrybucji, uwierzytelnione proxy s4m rozkładają obciążenie i są mierzone, więc poszerzenie puli jest tanie; aby poznać mechanikę, zobacz przewodnik po rotacji. Pamiętaj, że adresy IP z centrów danych mogą być nadal oznaczane hurtowo, a rotacja nic nie zmienia w kwestii odcisków palców. Prototypuj tanio z darmową listą proxy i weryfikuj wyjścia za pomocą narzędzi.
Pytania, odpowiedzi
Czy 429 to trwały ban?
Nie. HTTP 429 Zbyt Wiele Żądań to tymczasowe ograniczenie szybkości — zazwyczaj znika, gdy zwolnisz. Szanuj nagłówek Retry-After, dodaj opóźnienie i zmniejsz swoją szybkość żądań, a dostęp zazwyczaj zostanie wznowiony.
Jaka jest najskuteczniejsza poprawka na 429?
Szanując nagłówek Retry-After, gdy serwer go wysyła. Mówi ci dokładnie, jak długo czekać, abyś dostosował się do limitu serwera, zamiast zgadywać i ponownie zostać ograniczonym.
Czy rotujące proxysy zatrzymają błędy 429?
Pomaga to utrzymać każde IP poniżej limitu na IP, ale tylko w połączeniu z opóźnieniem i ograniczaniem. Rotacja bez uprzejmego tempa produkuje wykrywalny zalew, który prowadzi do trudniejszych blokad, więc połącz te dwa.
Czy proxy s4m wystarczą, aby obejść jakiekolwiek ograniczenia prędkości?
Żadne uczciwe narzędzie nie może tego obiecać. Proxysy datacenter s4m rozkładają obciążenie na IP, ale nadal potrzebujesz ograniczeń i throttlingu, zakresy datacenter mogą być oznaczone, a niektóre limity powinny być po prostu przestrzegane za pośrednictwem oficjalnego API.
Rozłóż obciążenie w uczciwy sposób
Połącz opóźnienie i ograniczenie z uwierzytelnionymi proxy w centrum danych na proxy.s4m.online, aby utrzymać każdy adres IP poniżej limitu. Płatność za użycie, dedykowany adres IP opcjonalny.
Ludzie znaleźli tę stronę, szukając
- jak naprawić 429 zbyt wiele żądań podczas zbierania danych
- proxy mieszkalne
- świeży lista darmowych proxy
- lista darmowych proxy
- jak openvpn działa
- adres IP
- wireguard
- proxy http subskrypcja
- konfiguracja proxy
- Tinyproxy vs 3proxy vs Squid
- proxy socks5
- wyłącznik kill VPN na androida
- UDP przez SOCKS5
- adres IP dla systemu Windows
- openvpn
- omijanie DPI: obfuskacja, Shadowsocks, V2Ray i reality
- wyłącznik kill VPN
- proxy do skrobania
Rzeczywiste frazy wyszukiwania, na które ta strona odpowiada — powiązane otwierają stronę, która je szczegółowo omawia.