بازگشت به وبلاگ

چگونه اندازه واقعی استخر پروکسی را بررسی کنیم: آزمایش 1000 درخواست و شمارشگر IP

ارائه‌دهندگان معمولاً اندازه اعلام شده استخر پروکسی را افزایش می‌دهند. روشی کارآمد برای بررسی با ۱۰۰۰ درخواست و شمارش IP های منحصر به فرد و اسکریپت آماده را نشان می‌دهیم.

📅۲۹ شهریور ۱۴۰۵

ارائه‌دهنده وعده می‌دهد «بیش از 10 میلیون IP»، اما در عمل شما هر چند دقیقه یک بار همان آدرس را دریافت می‌کنید. این یک وضعیت کلاسیک با اعداد بزرگنمایی شده در بازاریابی خدمات پروکسی است. یک روش ساده و مطمئن برای بررسی اندازه واقعی استخر وجود دارد — یک سری درخواست‌ها انجام دهید و شمارش کنید که چند IP منحصر به فرد دریافت کرده‌اید. در این مقاله بررسی می‌کنیم که چگونه این کار را به درستی انجام دهید، بدون اشتباهاتی که نتیجه را تحریف می‌کنند.

چرا اندازه استخر پروکسی را بررسی کنیم

اندازه استخر به طور مستقیم بر این تأثیر می‌گذارد که IP آدرس‌ها چقدر در تعداد زیادی درخواست تکرار می‌شوند. اگر شما یک آربیتراژکار هستید و 50 حساب Facebook Ads را مدیریت می‌کنید، تکرار IP در چندین پروفایل — این یک راه مستقیم به مسدود شدن زنجیره‌ای تمام حساب‌ها است. اگر شما یک متخصص SMM هستید و 30 حساب کاربری مشتریان Instagram را از طریق Dolphin Anty مدیریت می‌کنید، هر تکرار IP — این خطر را به وجود می‌آورد که حساب‌های مختلف مشتریان را در نظر سیستم‌های ضد تقلب پلتفرم به هم مرتبط کند.

برای فروشندگان در Wildberries و Ozon، استخر واقعی کوچک به این معنی است که پارسر قیمت رقبا به سرعت تحت محدودیت نرخ یا کپچا قرار می‌گیرد — سایت ده‌ها درخواست را از یک و همان آدرس مشاهده می‌کند و آن را مسدود می‌کند. برای بازاریابانی که در حال آزمایش هدف‌گذاری جغرافیایی تبلیغات هستند، مهم است که بفهمند آیا درخواست‌ها واقعاً از زیرشبکه‌ها و شهرهای مختلف می‌روند یا از سه IP تکراری یک مرکز داده.

بررسی 10-15 دقیقه طول می‌کشد و نتیجه آن هفته‌ها کار را صرفه‌جویی می‌کند، که در غیر این صورت صرف رفع مسدودیت حساب‌ها و بررسی این که چرا IP های «جدید» به دوستان قدیمی تبدیل شده‌اند، می‌شود.

چرا ارائه‌دهندگان اعداد را بزرگتر نشان می‌دهند

اندازه اعلام شده استخر معمولاً تعداد کل آدرس‌هایی است که به طور نظری در شبکه ارائه‌دهنده در طول زمان وجود داشته‌اند، از جمله IP هایی که مدت‌هاست ارائه نمی‌شوند، توسط پلتفرم‌های هدف مسدود شده‌اند یا متعلق به دستگاه‌های غیرفعال در مورد پروکسی‌های مقیم و موبایل هستند. نمونه واقعی در دسترس در زمان درخواست شما ممکن است به مراتب کمتر باشد.

دلیل دوم این است که چرخش IP در بسیاری از ارائه‌دهندگان بر اساس اصل «نشست — IP جدید» کار می‌کند، اما استخر چرخش ممکن است به یک جغرافیای خاص یا زیرشبکه ISP محدود باشد. اگر شما فقط IP های ایالات متحده را درخواست می‌کنید، در حالی که استخر کلی ارائه‌دهنده بر اساس تمام کشورها محاسبه می‌شود، تعداد واقعی آدرس‌های در دسترس برای شما ممکن است ده‌ها برابر با عدد تبلیغ شده متفاوت باشد.

به همین دلیل است که تست 1000 درخواست — نه پارانویا، بلکه یک مرحله ضروری در دقت قبل از ایجاد یک فرآیند تجاری بر روی ارائه‌دهنده پروکسی با ده‌ها حساب یا پارسری که 24/7 کار می‌کند، است.

روش بررسی: 1000 درخواست و شمارش IP های منحصر به فرد

منطق روش ساده است: شما N درخواست به سرویسی که IP خارجی فعلی شما را برمی‌گرداند (به عنوان مثال، httpbin.org/ip یا api.ipify.org) انجام می‌دهید، در هر درخواست پروکسی باید IP را مطابق با تنظیمات چرخش شما تغییر دهد. تمام آدرس‌های دریافتی در یک مجموعه (set) جمع‌آوری می‌شوند که به طور خودکار تکراری‌ها را حذف می‌کند. در پایان شما تعداد IP های منحصر به فرد را بر تعداد کل درخواست‌ها تقسیم می‌کنید — این همان ضریب واقعی منحصر به فرد بودن استخر است.

برای تست صحیح، سه شرط مهم است:

  • درخواست‌ها باید با فاصله‌ای که با سناریوی واقعی استفاده مطابقت دارد، انجام شوند — نیازی نیست 1000 درخواست را در 3 ثانیه انجام دهید، اگر در کار واقعی هر 5 دقیقه IP را تغییر می‌دهید؛
  • هر درخواست باید یک نشست جدید پروکسی را آغاز کند (برای پروکسی‌های مقیم و موبایل، این معمولاً به معنای یک توکن sticky-session جدید یا ایجاد کامل اتصال است)؛
  • باید دقیقاً همان جغرافیا و نوع پروکسی را که قصد دارید در تولید استفاده کنید، تست کنید — تست بر روی استخر عمومی واقعی وضعیت را برای یک کشور خاص نشان نخواهد داد.

عدد 1000 به طور تصادفی انتخاب نشده است — این یک نمونه کافی برای اهمیت آماری نتیجه است، در عین حال تست در زمان معقولی انجام می‌شود و بار اضافی بر روی ارائه‌دهنده ایجاد نمی‌کند.

اسکریپت آماده پایتون برای تست

در زیر — اسکریپت کاری که 1000 درخواست از طریق پروکسی انجام می‌دهد و IP های منحصر به فرد را شمارش می‌کند. متغیرهای PROXY_HOST، PROXY_PORT، PROXY_USER و PROXY_PASS را با داده‌های حساب کاربری ارائه‌دهنده پروکسی خود جایگزین کنید.

import requests
import time
from collections import Counter

PROXY_HOST = "proxy.example.com"
PROXY_PORT = "8000"
PROXY_USER = "login"
PROXY_PASS = "password"

proxy_url = f"http://{PROXY_USER}:{PROXY_PASS}@{PROXY_HOST}:{PROXY_PORT}"
proxies = {"http": proxy_url, "https": proxy_url}

TOTAL_REQUESTS = 1000
DELAY_SECONDS = 0.5  # فاصله بین درخواست‌ها

ip_counter = Counter()
errors = 0

for i in range(TOTAL_REQUESTS):
    try:
        response = requests.get(
            "https://api.ipify.org?format=json",
            proxies=proxies,
            timeout=10
        )
        ip = response.json().get("ip")
        ip_counter[ip] += 1
    except Exception as e:
        errors += 1
    time.sleep(DELAY_SECONDS)

unique_ips = len(ip_counter)
success_requests = TOTAL_REQUESTS - errors
uniqueness_ratio = unique_ips / success_requests if success_requests else 0

print(f"درخواست‌های موفق: {success_requests}")
print(f"خطاها: {errors}")
print(f"IP های منحصر به فرد: {unique_ips}")
print(f"ضریب منحصر به فرد بودن: {uniqueness_ratio:.2%}")
print("5 IP پر تکرار:")
for ip, count in ip_counter.most_common(5):
    print(f"  {ip}: {count} بار")

اسکریپت همچنین 5 IP پر تکرار را نمایش می‌دهد — این مفید است تا بفهمید آیا یک یا دو آدرس وجود دارد که «چسبیده» و به طور غیرعادی توسط ارائه‌دهنده ارائه می‌شوند. اگر چنین آدرس‌هایی وجود داشته باشد و سهم آن‌ها بیش از 5-7% از تمام درخواست‌ها باشد، این نشانه‌ای از مشکلات در چرخش در سمت ارائه‌دهنده است.

بررسی سریع از طریق cURL بدون کد

اگر نمی‌خواهید اسکریپت بنویسید، می‌توانید یک بررسی ساده از طریق ترمینال انجام دهید. دستور زیر در bash 50 درخواست انجام می‌دهد و تمام IP های دریافتی را در یک فایل ذخیره می‌کند، که یک ارزیابی سریع بدون نصب پایتون ارائه می‌دهد:

for i in {1..50}; do
  curl -s -x "http://login:[email protected]:8000" \
    https://api.ipify.org >> ip_list.txt
  echo "" >> ip_list.txt
  sleep 0.5
done

sort ip_list.txt | uniq -c | sort -nr

دستور sort | uniq -c لیستی از IP های منحصر به فرد با تعداد تکرار هر کدام را نشان می‌دهد — این همان اصل است که در اسکریپت پایتون وجود دارد، اما بدون نوشتن برنامه. برای بررسی سریع، 50-100 درخواست کافی است تا مشکلات واضحی در چرخش را مشاهده کنید.

چگونه نتایج تست را تفسیر کنیم

ضریب منحصر به فرد بودن به نوع پروکسی بستگی دارد. نباید انتظار 100% منحصر به فرد بودن از پروکسی‌های ارزان مراکز داده داشته باشید و نباید نگران باشید اگر پروکسی‌های مقیم کمی کمتر از 95% نشان دهند — برخی از ارائه‌دهندگان از استخرهایی با جغرافیای محدود استفاده می‌کنند که به طور فیزیکی نمی‌تواند تعداد نامحدودی از IP های خانگی داشته باشد.

نوع پروکسی انتظار منحصر به فرد بودن در 1000 درخواست ارزیابی
پروکسی‌های مقیم 90-99% نرمال
پروکسی‌های موبایل 70-95% نرمال (بستگی به تراکم اپراتورها در جغرافیا دارد)
پروکسی‌های مراکز داده 50-90% نرمال، اما بستگی به استخر اعلام شده زیرشبکه خاص دارد
هر نوع کمتر از 30% مشکل — استخر به شدت در تبلیغات بزرگنمایی شده یا چرخش شکسته است

علاوه بر ضریب کلی، به توزیع نیز توجه کنید: اگر 900 از 1000 درخواست IP های مختلفی را ارائه دهند و 100 درخواست به یک آدرس خاص برگردد — این بدتر از توزیع یکنواخت با همان ضریب میانگین است. یکنواختی مهم‌تر از درصد کلی منحصر به فرد بودن است، به ویژه برای وظایف چندحسابی که در آن هر پیوند مجدد IP به پروفایل حیاتی است.

بررسی استخر در Dolphin Anty و AdsPower بدون کد

اگر نمی‌خواهید با اسکریپت‌ها کار کنید، مرورگرهای ضد شناسایی ابزارهای داخلی برای بررسی مشابهی ارائه می‌دهند، هرچند در مقیاس کوچکتر. در Dolphin Anty بخش «پروکسی» را باز کنید → پروکسی مورد نظر را انتخاب کنید → چند بار دکمه بررسی IP را با فاصله چند دقیقه‌ای فشار دهید و نتیجه را به صورت دستی در جدول ثبت کنید. در AdsPower نیز به همین صورت: در بخش مدیریت پروکسی دکمه «Check» وجود دارد که IP فعلی، کشور و ارائه‌دهنده شبکه را نشان می‌دهد — بررسی‌های تکراری با فاصله نشان می‌دهند که آیا آدرس تغییر می‌کند یا خیر.

این روش دستی برای بررسی سریع و انتخابی قبل از خرید حجم زیادی از پروکسی مناسب است، اما جایگزین تست کامل 1000 درخواست نمی‌شود، اگر قصد دارید فرآیند را در ده‌ها یا صدها حساب گسترش دهید. برای بررسی جدی قبل از استفاده طولانی‌مدت، بهتر است اسکریپت بخش بالا را اجرا کنید و داده‌های آماری معناداری دریافت کنید.

اشتباهات رایج در تست استخر

اولین اشتباه — انجام درخواست‌ها خیلی سریع، بدون وقفه. برخی از ارائه‌دهندگان عمداً یک IP یکسان را در یک بازه زمانی کوتاه برمی‌گردانند (نشست چسبنده)، و تست سریع بدون وقفه یک منحصر به فردی به شدت پایین را نشان می‌دهد، در حالی که در فواصل واقعی استفاده همه چیز درست است.

دومین اشتباه — تست از طریق سرویسی که خود پاسخ‌ها را کش می‌کند یا به جای آدرس واقعی، موقعیت جغرافیایی را برمی‌گرداند. از سرویس‌های معتبر مانند ipify.org یا httpbin.org/ip استفاده کنید که JSON خالص را بدون کش کردن در سمت خود ارائه می‌دهند.

سومین اشتباه — عدم توجه به زمان‌های تایم‌اوت و خطاهای اتصال در آمار کلی. اگر 200 از 1000 درخواست با خطا به پایان برسد و شما منحصر به فرد بودن را از 1000 محاسبه کنید، نه از 800 موفق، ضریب به سمت بدتر تحریف می‌شود.

چهارمین اشتباه — تست نکردن جغرافیا که واقعاً در کار نیاز دارید. استخر ممکن است به طور جهانی بزرگ باشد، اما برای یک شهر یا ایالت خاص کوچک باشد — و به ویژه جغرافیای محلی معمولاً برای تبلیغات هدف‌گذاری شده یا SMM محلی حیاتی است.

اگر استخر کوچک بود چه کنیم

اگر تست نشان داد که ضریب منحصر به فرد بودن پایین است، اولین قدم — نوشتن به پشتیبانی ارائه‌دهنده با اعداد خاص تست و درخواست توضیح دلیل است. ارائه‌دهندگان متعهد معمولاً به طور شفاف ساختار استخر را بر اساس جغرافیا و نوع پروکسی توضیح می‌دهند و ممکن است یک نمونه باریک‌تر اما واقعاً کارآمد پیشنهاد دهند.

گزینه دوم — بازنگری در نوع پروکسی برای وظیفه. برای مدیریت حساب‌ها و کار با پلتفرم‌های تبلیغاتی، معمولاً مؤثرتر است که شدت چرخش IP های مراکز داده را افزایش ندهید، بلکه به پروکسی‌های مقیم یا موبایل بروید، جایی که خود طبیعت شبکه توزیع آدرس‌ها را طبیعی‌تر و کمتر قابل شناسایی برای سیستم‌های ضد تقلب فراهم می‌کند.

گزینه سوم — کاهش بار بر روی استخر: افزایش فاصله بین تغییرات IP، توزیع وظایف بین چندین زیرشبکه یا جغرافیا، اگر پلتفرم اجازه دهد که از یک کشور خاص کار نکند. گاهی اوقات راه‌حل در افزایش استخر نیست، بلکه در تغییر الگوی درخواست‌هاست تا در حجم واقعی آدرس‌های منحصر به فرد در دسترس قرار گیرد.

نتیجه‌گیری

تست 1000 درخواست با شمارش IP های منحصر به فرد — یک روش سریع و عینی برای بررسی این است که آیا استخر واقعی پروکسی با اعداد اعلام شده توسط ارائه‌دهنده مطابقت دارد یا خیر. اسکریپت آماده پایتون یا بررسی ساده از طریق cURL حداقل زمان را می‌گیرد و نتیجه به جلوگیری از مسدود شدن حساب‌ها، مسدودیت در هنگام پارس کردن بازارها و هزینه‌های اضافی برای پروکسی‌هایی که برای وظیفه مناسب نیستند، کمک می‌کند.

اگر قصد دارید حساب‌های تبلیغاتی Facebook Ads یا TikTok Ads را مدیریت کنید، ده‌ها پروفایل Instagram را از طریق Dolphin Anty یا AdsPower مدیریت کنید، به پروکسی‌های موبایل توجه کنید — آن‌ها معمولاً توزیع IP طبیعی‌تری را نشان می‌دهند و کمتر تحت سیستم‌های ضد تقلب پلتفرم قرار می‌گیرند. برای پارس کردن قیمت‌ها در Wildberries و Ozon یا وظایفی که سرعت و ثبات مهم است، بهتر است پروکسی‌های مقیم را با روش این مقاله تست کنید قبل از اینکه بر روی آن‌ها یک فرآیند کاری دائمی بسازید.