Amazon'un IP Ban Sistemini Anlamak
Amazon internetteki en sofistike anti-bot sistemlerinden birini işletiyor. IP adresleriniz yasaklandığında, fiyatlarınızı, araştırmanızı ve rekabetçi istihbarat operasyonlarınızı yönlendiren ürün verilerine erişimi kaybedersiniz. Amazon'un IP'leri nasıl algıladığını ve yasakladığını anlamak, onu önlemek için ilk adımdır.
Amazon sadece bireysel IP'leri engellemez - davranışsal profiller oluşturur. Tek bir şüpheli IP yumuşak bloklar (CAPTCHAs) tetikleyebilirken, kalıcı ihlaller zor bloklara yol açabilir (tam erişim inkar). Sistem IP aralıkları boyunca desenleri izler, bu yüzden bir IP yasaklandı komşu adreslerde scrutiny artırabilir. Analiz yöntemleri hakkında kapsamlı bir anlayış için rehberimizi görün Anti-bot sistemlerinin nasıl algılandığını nasıl algılar.
Amazon nasıl otomatik trafik tespit eder
Amazon'un tespiti aynı anda birden çok katman üzerinde çalışır.
İstek-Level Tespiti
| Signal Signal | Amazon hangileri kontrol ediyor | Risk Düzeyi |
|---|---|---|
| TLS Parmak | TLS elhake maçlarını bilinen bot kütüphanesi (Python talepleri, curl) | Yüksek Yüksek Yüksek Yüksek Yüksek |
| Header Order | HTTP başlıkları tarayıcı olmayan sırayla gönderilir | Medium Medium Medium Medium Medium |
| Eksik Headers | Kabul dilinin, kabul edilenin, vb. | Yüksek Yüksek Yüksek Yüksek Yüksek |
| Kullanıcı-Agent | Tamamlanmış, geçersiz veya bilinen-bot Kullanıcı-Agent dizeleri | Yüksek Yüksek Yüksek Yüksek Yüksek |
| Çerez Kullanımı | Kabul veya geri dönme kurabiye | Medium Medium Medium Medium Medium |
Davranış
| Desen | Açıklama | Risk Düzeyi |
|---|---|---|
| Sabit aralıklar | İstekler tam aralıklara (her 5.0 saniye) ulaşır | Yüksek Yüksek Yüksek Yüksek Yüksek |
| Sequential tarama | ASIN'leri sayısal veya alfabetik sırayla ziyaret edin | Yüksek Yüksek Yüksek Yüksek Yüksek |
| Hayır navigasyon yolu | Doğrudan tarama olmadan ürün sayfalara atlamak | Medium Medium Medium Medium Medium |
| Yüksek talep hacmi | Bir IP'den dakikada yüzlerce istek | Eleştirel eleştirel |
| Hiçbir JavaScript infaz | Sayfalar JavaScript olmadan yükleniyor | Medium Medium Medium Medium Medium |
IP-Level Tespit
Amazon, Merkezi IP aralıklarının ve bilinen proxy sağlayıcılarının veritabanılarını koruyor. Datacenter IPs, davranışın ne olursa olsun derhal incelenir. Konut IPs Daha yüksek güven ile başlayın çünkü havuzu gerçek Amazon alışverişleriyle paylaşıyorlar.
Amazon Blocks türleri
Farklı blok türlerini anlamak uygun şekilde yanıt vermenize yardımcı olur.
Yumuşak Bloklar (CAPTCHA)
En yaygın yanıt. Amazon, ürün verileri yerine CAPTCHA sayfasına hizmet eder. Bu bir uyarıdır - aynı IP'den devam edin ve zor bir bloka yükseleceksiniz. Bir CAPTCHA aldığında hemen geri dönün ve yeni bir IP'ye geçiş yapın.
Hard Blocks (503/403 Hata)
Erişimin tam reddedilmesi, genellikle HTTP 503 veya 403 durum kodları döndürür. Sert bloklar belirli bir IP için günlerce sürebilir. Sert engellendikten sonra, IP, blok sona erinceye kadar Amazon için etkili bir şekilde kullanılamaz.
İçerik Manipulation
Amazon bazen botlardan şüphelenilen farklı içeriklere hizmet eder - yanlış fiyatlar, eksik incelemeler veya eksik ürün verileri. Bu tespit etmek daha zordur, çünkü 200 yanıt alırsınız. Bu yakalamak için bilinen değerlere karşı kazınmış verilerinizi geçerlidir.
Key takeaway: CAPTCHAs are uyarı sinyalleri, sadece engeller değil. Mevcut yaklaşımınızın ayarlanması gereken bir gösterge olarak her CAPTCHA'yı tedavi edin.
Önleme Stratejileri
1. Konut Proxies kullanın
Bu yapabileceğiniz en etkili değişimdir. Konut proxyleri gerçek internet abonelerine atanan IP adreslerini kullanır, gerçek alışverişlerden gelen isteklerinizi ayırt eder. ProxyHat'ın konut proxy havuzu, milyonlarca IP ile 195+ ülkeyi kapsar.
# ProxyHat residential proxy with geo-targeting
http://USERNAME-country-US:PASSWORD@gate.proxyhat.com:8080
# For Amazon.de
http://USERNAME-country-DE:PASSWORD@gate.proxyhat.com:8080
# For Amazon.co.uk
http://USERNAME-country-GB:PASSWORD@gate.proxyhat.com:80802. Implement Smart Rotation
Amazon'a tek bir IP'den 5-10'dan fazla istek göndermeyin. ProxyHat'ın ağ geçidi otomatik olarak IP'leri varsayılan olarak döndürür, ancak uygulama düzeyinde kontrolleri de uygulamanız gerekir.
import requests
import random
import time
PROXY_BASE = "http://USERNAME:PASSWORD@gate.proxyhat.com:8080"
def make_request(url, max_retries=3):
"""Make a request with automatic retry on failure."""
for attempt in range(max_retries):
# Each request gets a fresh IP from the rotating proxy
proxies = {"http": PROXY_BASE, "https": PROXY_BASE}
headers = {
"User-Agent": random.choice(USER_AGENTS),
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Language": "en-US,en;q=0.9",
"Accept-Encoding": "gzip, deflate, br",
}
try:
response = requests.get(url, headers=headers, proxies=proxies, timeout=30)
# Check for CAPTCHA
if "captcha" in response.text.lower() or response.status_code == 503:
print(f"CAPTCHA/block detected on attempt {attempt + 1}")
time.sleep(random.uniform(10, 30)) # Longer backoff
continue
if response.status_code == 200:
return response
except requests.RequestException:
time.sleep(random.uniform(5, 15))
return None3. Randomize Request Patterns
İstek modelinizin her yönü, istatistiksel algılamadan kaçınmak için rastgeleliği içermelidir.
import random
import time
def random_delay(min_sec=2, max_sec=7):
"""Add human-like random delay."""
delay = random.uniform(min_sec, max_sec)
# Occasionally add a longer pause (simulates reading a page)
if random.random() < 0.1: # 10% chance
delay += random.uniform(10, 30)
time.sleep(delay)
def shuffle_targets(urls):
"""Randomize the order of URLs to avoid sequential patterns."""
shuffled = urls.copy()
random.shuffle(shuffled)
return shuffled
def get_random_user_agent():
"""Return a realistic, current User-Agent string."""
agents = [
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:125.0) Gecko/20100101 Firefox/125.0",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Safari/605.1.15",
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
]
return random.choice(agents)4. Market Geo-Location to Market
Bir Alman IP veya Amazon.com'a erişmek, bir Japon IP'den güçlü bir otomatik aktivite sinyalidir. Her zaman lokasyonunuzu hedef pazara eşleştirin.
| Market Market Market | Proxy Country | ProxyHat Build |
|---|---|---|
| Amazon.com | Amerika Birleşik Devletleri | USERNAME-country-US |
| Amazon.co.uk | Birleşik Krallık | USERNAME-country-GB |
| Amazon.de | Almanya Almanya Almanya Almanya | USERNAME-country-DE |
| Amazon.co.jp | Japonya Japonya Japonya | USERNAME-country-JP |
| Amazon.fr | Fransa Fransa | USERNAME-country-FR |
| Amazon.in | Hindistan Hindistan | USERNAME-country-IN |
Check Check Check Check ProxyHat'ın tam yer listesi Tüm desteklenen ülkeler için.
5. Oturumlar Properly
Amazon kurabiyeler ile seansları izler. Kabul ve geri dönen kurabiyeler isteklerinizin gerçek bir tarayıcı gibi görünmesini sağlar. Paginated tarama (araştırma sonuçları, yorumları), aynı IP ve kurabiye kavanozunu korumak için yapışkan seanslar kullanın.
# Sticky session for paginated scraping
PROXY_SESSION = "http://USERNAME-session-amz{session_id}:PASSWORD@gate.proxyhat.com:8080"
def create_session(session_id):
"""Create a requests session with sticky proxy and cookies."""
session = requests.Session()
proxy = PROXY_SESSION.format(session_id=session_id)
session.proxies = {"http": proxy, "https": proxy}
session.headers.update({
"User-Agent": get_random_user_agent(),
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Language": "en-US,en;q=0.9",
"Accept-Encoding": "gzip, deflate, br",
})
return session6. Başarınızı Takip Etmek
HTTP 200 oranını takip edin, CAPTCHA oranı ve gerçek zamanlı blok oranı. Tespit artışları olduğunda hurdalarınızı otomatik olarak toparlayın.
class SuccessTracker:
def __init__(self, captcha_threshold=0.1, block_threshold=0.05):
self.total = 0
self.success = 0
self.captchas = 0
self.blocks = 0
self.captcha_threshold = captcha_threshold
self.block_threshold = block_threshold
def record(self, status):
self.total += 1
if status == "success":
self.success += 1
elif status == "captcha":
self.captchas += 1
elif status == "block":
self.blocks += 1
@property
def should_throttle(self):
if self.total < 10:
return False
captcha_rate = self.captchas / self.total
block_rate = self.blocks / self.total
return captcha_rate > self.captcha_threshold or block_rate > self.block_threshold
@property
def success_rate(self):
return self.success / self.total if self.total > 0 else 0Bir Bandan Sonra Kurtarma
Bir IP yasaklanırsa, işte nasıl kurtarılır:
- Hemen durun: Yasaklanan IP veya yakın IP'lerden gelen talepleri göndermeye devam etmeyin.
- Anahtar IP'ler: Farklı bir aralığın taze bir yerleşim IP setini kullanın. ProxyHat'ın büyük havuzu, her zaman mevcut temiz IP'lere sahip olmanızı sağlar.
- Yaklaşımınızı ayarlayın: İstek modellerinizi gözden geçirin, gecikmeler ve kafalar yeniden ortaya çıkmadan önce.
- Yavaş yavaş başlayın: Resuming, düşük bir istek oranıyla başlayın ve yavaş yavaş artış.
- Bunu bekleyin: Amazon yasakları genellikle yumuşak bloklar için 2448 saat içinde ve belirli IP'lerde sert bloklar için 7 gün içinde sona erer.
Hayır
İşte bir eşdeğer Node.js uygulaması ProxyHat's Node SDK.
const axios = require("axios");
const { HttpsProxyAgent } = require("https-proxy-agent");
const PROXY_URL = "http://USERNAME:PASSWORD@gate.proxyhat.com:8080";
const USER_AGENTS = [
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 Chrome/124.0.0.0 Safari/537.36",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 Chrome/124.0.0.0 Safari/537.36",
"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:125.0) Gecko/20100101 Firefox/125.0",
];
async function safeAmazonRequest(url, maxRetries = 3) {
for (let attempt = 0; attempt < maxRetries; attempt++) {
const agent = new HttpsProxyAgent(PROXY_URL);
try {
const response = await axios.get(url, {
httpsAgent: agent,
headers: {
"User-Agent": USER_AGENTS[Math.floor(Math.random() * USER_AGENTS.length)],
"Accept-Language": "en-US,en;q=0.9",
Accept: "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Encoding": "gzip, deflate, br",
},
timeout: 30000,
validateStatus: () => true,
});
if (response.data.toLowerCase().includes("captcha") || response.status === 503) {
console.log(`CAPTCHA/block on attempt ${attempt + 1}`);
await new Promise((r) => setTimeout(r, 10000 + Math.random() * 20000));
continue;
}
if (response.status === 200) return response;
} catch (err) {
await new Promise((r) => setTimeout(r, 5000 + Math.random() * 10000));
}
}
return null;
}
// Random delay between requests
function randomDelay(minMs = 2000, maxMs = 7000) {
const delay = minMs + Math.random() * (maxMs - minMs);
return new Promise((r) => setTimeout(r, delay));
}Önleme Checklist
Amazon scraper'i çalıştırmadan önce bu kontrol listesini kullanın:
- Konut referansları kullanmak (merkezli veri değil)
- Proxy geo-location maçlarını hedef piyasa
- Kullanıcı-Agent dizeleri mevcut ve döndürülür
- Tüm standart tarayıcı başlıkları dahil edilmiştir
- İstek gecikmeleri rastgeleleştirilmiş (2-7 saniye minimum)
- URL'ler parlıyor, işlenmemiş değil
- Cookie kullanımı etkinleştirilir
- CAPTCHA tespiti ve otomatik gerileme yerindedir
- Başarı oranı izleme aktif
- Uygunluk sınırlıdır ( 5-10 paralel istekle başlayın)
Key Takeaways
- Amazon'un algılaması çok katmanlıdır: parmak izi, davranışsal desenler ve IP itibarı her konuda.
- Konut referansları tartışılmaz - veri merkezi IP'ler hızla artan scrutiny ile karşı karşıya.
- Hedef Amazon pazarına geo-lokumu eşleştirin.
- Her şeyi keşfedin: gecikmeler, Kullanıcı-Agents, istek siparişi ve oturum kalıpları.
- CAPTCHAs'ı erken uyarılar olarak ele alın ve hemen ayarlayın.
- Tespit artışı sırasında başarı oranları ve otomatik olarak throttle izleyin.
Tamamlanan bir Amazon kurulumu için, dikkatimizi okuyun Amazon ürün verileri kılavuzluk Ve tam olarak keşfedin e-ticaret stratejiyi kazıtıyor.Get started with ProxyHat'ın konut temsilcileri Güvenilir Amazon erişimi için.






