اگر شما در زمینه استخدام یا تحلیل منابع انسانی فعالیت میکنید، قطعاً با این وضعیت مواجه شدهاید: نیاز به جمعآوری سریع 500+ آگهی شغلی از رقبای خود، ردیابی بازار دستمزدها یا استخراج اطلاعات تماس کارفرمایان — اما پلتفرمها شما را پس از 20-30 درخواست مسدود میکنند. LinkedIn و HeadHunter بهطور فعال از دادههای خود محافظت میکنند و بدون رویکرد صحیح، پارس کردن به یک مبارزه بیپایان با کپچاها و مسدودیتها تبدیل میشود.
در این راهنما بررسی خواهیم کرد که کدام ابزارها در سال 2024 واقعاً کار میکنند، چگونه پروکسیها را برای جمعآوری پایدار دادهها تنظیم کنیم و از چه اشتباهاتی باید پرهیز کنیم تا حساب کاربری خود را از دست ندهیم.
چرا LinkedIn و HeadHunter پارس کردن را مسدود میکنند
هر دو پلتفرم از دادهها درآمدزایی میکنند. LinkedIn دسترسی به پایگاه داده را از طریق تعرفههای پولی Recruiter و Recruiter Lite میفروشد و HeadHunter از طریق API و آگهیهای پولی. وقتی کسی شروع به جمعآوری این دادهها بهصورت انبوه بهصورت رایگان میکند، پلتفرمها بهسرعت واکنش نشان میدهند. در اینجا مکانیزمهای خاص حفاظتی وجود دارد که با آنها مواجه خواهید شد:
محدودیت نرخ — محدودیت تعداد درخواستها
LinkedIn تعداد بازدیدهای پروفایلها و صفحات آگهیهای شغلی را در یک بازه زمانی ردیابی میکند. یک حساب کاربری رایگان میتواند حدود 300 پروفایل را در ماه مشاهده کند — پس از آن شما هشدار یا مسدودیت موقتی دریافت میکنید. در پارس کردن خودکار بدون تأخیر بین درخواستها، این محدودیت در چند دقیقه تمام میشود. HeadHunter تعداد درخواستهای جستجو از یک IP را محدود میکند — در صورت تجاوز، کپچا نشان میدهد یا دسترسی را موقتی مسدود میکند.
تحلیل رفتار و User-Agent
پلتفرمها الگوهای رفتاری را تحلیل میکنند: یک کاربر واقعی صفحه را پیمایش میکند، در محتوا توقف میکند و بهطور غیرمتوالی کلیک میکند. ربات درخواستها را با فواصل یکسان ارسال میکند، پیمایش نمیکند و هدرهای غیرمعمول ارسال میکند. LinkedIn بهطور اضافی وجود یک جلسه مجاز را بررسی میکند — بدون ورود به حساب کاربری، شما دادههای محدود را مشاهده میکنید و بهسرعت مسدودیت IP دریافت میکنید.
مسدودیت بر اساس آدرس IP
این رایجترین نوع حفاظت است. اگر از یک IP درخواستهای زیادی ارسال شود — IP در لیست سیاه قرار میگیرد. IPهای مراکز داده (AWS، Google Cloud، Hetzner) بهسرعت مسدود میشوند: پلتفرمها این دامنههای آدرس را میشناسند و به آنها با شک و تردید بیشتری نگاه میکنند. IPهای خانگی و موبایل کمتر مسدود میشوند، زیرا ممکن است کاربران واقعی پشت آنها باشند.
⚠️ مهم است که بدانید
LinkedIn در سال 2023 بهطور قابل توجهی حفاظت را تشدید کرده است: اکنون حتی در هنگام مشاهده دستی پروفایلها با VPN یا پروکسی مرکز داده، حساب کاربری ممکن است مسدود شود. برای کار با LinkedIn پروکسیهای خانگی یا موبایل بهطور حیاتی مهم هستند.
چه چیزی را استخدامکنندگان و تحلیلگران منابع انسانی پارس میکنند
قبل از تنظیم ابزارها، با وظیفه خود مشخص کنید — انتخاب رویکرد و نوع پروکسی به آن بستگی دارد. در اینجا سناریوهای اصلی وجود دارد که متخصصان منابع انسانی و آژانسهای استخدام با آنها کار میکنند:
| وظیفه | پلتفرم | حجم دادهها |
|---|---|---|
| نظارت بر دستمزدها در بازار | HeadHunter، LinkedIn | 500–5000 آگهی شغلی در روز |
| جمعآوری اطلاعات تماس کارفرمایان | 100–1000 پروفایل در روز | |
| تحلیل نیازها به نامزدها | HeadHunter، LinkedIn | 1000–10 000 آگهی شغلی |
| ردیابی آگهیهای شغلی جدید رقبای | HeadHunter | نظارت روزانه |
| جستجوی نامزدهای غیرفعال | 50–500 پروفایل در روز |
نکته کلیدی: وظایف با حجم دادههای بالا (هزاران آگهی شغلی در روز) نیاز به مجموعهای از پروکسیها با چرخش دارند. وظایف با حجم کم (نظارت بر 50-100 موقعیت در روز) میتوانند با 1-2 پروکسی ثابت با رعایت تأخیرها بین درخواستها حل شوند.
ابزارهای آماده برای پارس کردن آگهیهای شغلی
خبر خوب این است که نیازی به نوشتن کد از صفر نیست. راهحلهای آمادهای برای وظایف و سطوح مختلف آمادگی فنی وجود دارد. بیایید دستههای اصلی را بررسی کنیم.
ابزارهای بدون کد (No-code tools)
Apify — یک پلتفرم ابری با "اکترهای" آماده برای LinkedIn و HeadHunter. دارای Scraper آگهیهای شغلی LinkedIn و Scraper HH.ru است. شما فقط پارامترهای جستجو را مشخص میکنید و پلتفرم همه چیز را انجام میدهد. از پروکسیهای خودتان پشتیبانی میکند. تعرفهها از 49 دلار در ماه شروع میشود و یک محدودیت رایگان دارد.
Phantombuster — تخصص آن در LinkedIn است. میتواند آگهیها، پروفایلها و اطلاعات تماس شرکتها را جمعآوری کند. از طریق یک حساب کاربری مجاز LinkedIn کار میکند. از پروکسی پشتیبانی میکند. مهم است: یک حساب LinkedIn = یک پروفایل پروکسی، در غیر این صورت به دلیل تغییر IP مسدود خواهید شد.
Octoparse — یک سازنده بصری پارسرها. به شما اجازه میدهد تا جمعآوری دادهها از هر وبسایتی را بدون کد، با مشخص کردن عناصر مورد نیاز با ماوس تنظیم کنید. از چرخش پروکسی پشتیبانی میکند. برای HeadHunter مناسب است — رابط کاربری ساده و قابل فهم است.
ابزارهای برای کاربران فنی
ParseHub — یک برنامه دسکتاپ با رابط بصری، اما انعطافپذیرتر از Octoparse. میتواند با محتوای دینامیک (صفحات JavaScript) کار کند. برای LinkedIn این موضوع حیاتی است — بیشتر دادهها بهصورت دینامیک بارگذاری میشوند.
Bright Data (Web Scraper IDE) — یک پلتفرم حرفهای با پروکسیهای داخلی. دارای الگوهای آماده برای LinkedIn است. گران است، اما برای حجم صنعتی قابل اعتماد است.
HH.ru API — API رسمی HeadHunter. برای استفاده غیرانتفاعی رایگان است و برای کسبوکارها هزینه دارد. اگر وظیفه شما نظارت بر آگهیها است و نه جمعآوری انبوه اطلاعات تماس، API رسمی پایدارترین گزینه است. محدودیتها: 50 درخواست در ثانیه برای برنامههای مجاز.
💡 نکته
برای HeadHunter با API رسمی شروع کنید — این قانونی، پایدار و رایگان تا محدودیتهای خاص است. برای LinkedIn بدون ابزارهای جانبی و پروکسی نمیتوان کار کرد، زیرا API عمومی برای آگهیها وجود ندارد.
چرا پروکسیها لازم هستند و چه نوعی را انتخاب کنیم
پروکسی — یک سرور واسط است که از طریق آن درخواستهای شما ارسال میشود. پلتفرم IP پروکسی را میبیند، نه آدرس واقعی شما. با چرخش پروکسی (تغییر خودکار IP)، هر درخواست بهعنوان درخواست یک کاربر جدید به نظر میرسد — این امکان را برای دور زدن محدودیتها و مسدودیتها فراهم میکند.
اما همه پروکسیها بهطور یکسان برای LinkedIn و HeadHunter مؤثر نیستند. انتخاب نوع پروکسی بهطور حیاتی بر نتیجه تأثیر میگذارد:
| نوع پروکسی | HeadHunter | سرعت | قیمت | |
|---|---|---|---|---|
| پروکسیهای خانگی | ✅ عالی | ✅ عالی | متوسط | $$ |
| پروکسیهای موبایل | ✅ عالی | ✅ خوب | متوسط | $$$ |
| پروکسیهای مراکز داده | ❌ اغلب مسدود میشوند | ⚠️ بهطور متوسط | بالا | $ |
پروکسیهای خانگی — انتخاب بهینه برای LinkedIn
پروکسیهای خانگی از آدرسهای IP واقعی کاربران خانگی استفاده میکنند. از نظر LinkedIn — این یک فرد عادی است که در خانه نشسته است. چنین IPها بهندرت در لیست سیاه قرار میگیرند و پلتفرم نمیتواند آنها را از یک کاربر واقعی تشخیص دهد. برای پارس کردن LinkedIn این استاندارد صنعت است.
پارامترهای کلیدی در انتخاب پروکسیهای خانگی برای پارس کردن آگهیهای شغلی:
- جغرافیای مکان: IP کشوری را انتخاب کنید که آگهیهای آن را پارس میکنید (برای HeadHunter — روسیه، برای LinkedIn — کشور مورد نظر)
- چرخش: تغییر خودکار IP پس از هر درخواست یا بر اساس زمان
- مجموعه IP: هرچه بیشتر باشد — بهتر است، ریسک استفاده مجدد از IP مسدود شده را کاهش میدهد
- پشتیبانی از HTTP/HTTPS و SOCKS5 — بیشتر ابزارهای پارس کردن به این پروتکلها نیاز دارند
پروکسیهای موبایل — برای کار با حسابهای LinkedIn
اگر شما LinkedIn را از طریق یک حساب کاربری مجاز پارس میکنید (همانطور که Phantombuster کار میکند)، پروکسیهای موبایل مزیت اضافی میدهند: LinkedIn اپراتور موبایل را بهعنوان منبع میبیند و به این IPها بیشتر اعتماد میکند. یک IP موبایل میتواند هزاران کاربر واقعی را پشتیبانی کند (زیر NAT اپراتور)، بنابراین حتی فعالیت بالا از آن مشکوک نیست.
پروکسیهای مراکز داده — فقط برای HeadHunter
پروکسیهای مراکز داده — سریع و ارزان هستند، اما LinkedIn آنها را بهطور تهاجمی مسدود میکند. برای HeadHunter بهتر عمل میکنند: پلتفرم نسبت به IPهای مراکز داده کمتر پارانوئید است، بهویژه اگر تأخیرها بین درخواستها رعایت شود. برای نظارت بودجهای بر آگهیها در HH با حجم کم مناسب هستند.
پارس کردن LinkedIn: تنظیمات مرحله به مرحله
LinkedIn — پیچیدهترین پلتفرم برای پارس کردن است. در اینجا مهم است که با احتیاط عمل کنید تا حساب کاربری خود را از دست ندهید. بیایید یک طرح کاری را با استفاده از Phantombuster بررسی کنیم — یکی از محبوبترین ابزارها در میان استخدامکنندگان.
مرحله 1: حساب LinkedIn را آماده کنید
هرگز از حساب کاربری اصلی خود برای پارس کردن استفاده نکنید. یک حساب کاربری جداگانه ایجاد کنید یا از حساب ثانویه استفاده کنید. اگر مسدود شود — شما ارتباطات و تاریخچه ارزشمند خود را از دست نخواهید داد. حساب کاربری باید "گرم" باشد: پروفایل پر شده، چند ارتباط، حداقل یک هفته فعالیت قبل از شروع پارس کردن.
مرحله 2: پروکسی را به حساب متصل کنید
قاعده حیاتی: یک حساب LinkedIn = یک آدرس IP. اگر امروز با IP 1 وارد میشوید و فردا با IP 2 — این یک پرچم قرمز برای سیستم امنیتی LinkedIn است. از یک پروکسی خانگی ثابت (sticky session) برای هر حساب استفاده کنید.
در Phantombuster تنظیم پروکسی بهصورت زیر است:
- به Settings → Proxies در حساب کاربری خود در Phantombuster بروید
- روی Add Proxy کلیک کنید
- جزئیات پروکسی را وارد کنید: هاست، پورت، نام کاربری، رمز عبور
- نوع را انتخاب کنید: HTTP یا SOCKS5 (بسته به ارائهدهنده پروکسی شما)
- روی Test Proxy کلیک کنید — مطمئن شوید که پروکسی کار میکند
- این پروکسی را به یک "فانتوم" خاص (وظیفه) که با حساب شما کار میکند اختصاص دهید
مرحله 3: تنظیمات LinkedIn Jobs Export
در Phantombuster فانتوم "LinkedIn Jobs Search Export" را پیدا کنید. تنظیمات:
- Search URL: URL جستجوی آگهیهای LinkedIn با فیلترهای مورد نیاز (سمت، شهر، نوع استخدام) را وارد کنید
- Number of jobs per launch: از 25-50 شروع کنید. از قرار دادن 500 از روز اول خودداری کنید
- Launch frequency: 1 بار در 2-3 ساعت. بهطور مداوم اجرا نکنید
- Session cookie: کوکی li_at را از مرورگر کپی کنید (دستورالعمل در Phantombuster موجود است)
مرحله 4: تنظیم محدودیتهای ایمن
LinkedIn به دلیل تهاجم مسدود میکند، نه به دلیل خود پارس کردن. محدودیتهای ایمن برای یک حساب کاربری:
- بیش از 80-100 بازدید از آگهیهای شغلی در روز نباشد
- تأخیر بین درخواستها: حداقل 3-5 ثانیه
- در ساعات شب استراحت کنید (رفتار انسانی را شبیهسازی کنید)
- در روزهای تعطیل پارس کردن را شروع نکنید — این برای پلتفرم B2B مشکوک به نظر میرسد
⚠️ اگر به حجم بالایی از دادهها از LinkedIn نیاز دارید
اگر نیاز به پارس کردن هزاران آگهی در روز دارید — از چند حساب کاربری استفاده کنید، هر کدام با پروکسی خانگی خود. یک حساب کاربری + یک IP = حداکثر 100 آگهی در روز بدون ریسک مسدودیت. 10 حساب کاربری × 100 = 1000 آگهی در روز.
پارس کردن HeadHunter: ویژگیها و تنظیمات
HeadHunter از نظر پارس کردن به دو دلیل از LinkedIn سادهتر است: یک API رسمی دارد و حفاظت آن کمتر تهاجمی است. اما در جمعآوری انبوه دادهها بدون تنظیم صحیح، شما هنوز هم مسدود خواهید شد.
گزینه 1: API رسمی HeadHunter (توصیه میشود)
اگر وظیفه شما نظارت بر آگهیها و تحلیل بازار (بدون جمعآوری اطلاعات تماس) است، از API رسمی hh.ru استفاده کنید. این کاملاً قانونی است و دسترسی پایدار به دادهها را فراهم میکند.
- یک برنامه در dev.hh.ru ثبتنام کنید
- client_id و client_secret را دریافت کنید
- از endpoint GET /vacancies برای جستجوی آگهیها استفاده کنید
- پارامترهای فیلتر: text، area (منطقه)، salary، experience، schedule
- محدودیت: 50 درخواست در ثانیه برای برنامههای مجاز
نتیجه بهصورت JSON ارسال میشود — به راحتی میتوان آن را در Excel یا Google Sheets از طریق ابزارهایی مانند Zapier یا Make (قبلاً Integromat) بدون نوشتن کد بارگذاری کرد.
گزینه 2: پارس کردن از طریق Apify (بدون کد)
اگر به دادههایی نیاز دارید که در API رسمی وجود ندارد (بهعنوان مثال، اطلاعات تماس کارفرمایان یا دادهها در فرمت غیرمعمول)، از Apify با اکتر آماده برای HH.ru استفاده کنید:
- به apify.com بروید و اکتر "HH.ru Scraper" را پیدا کنید
- روی Try for free کلیک کنید
- در تنظیمات، درخواست جستجو (سمت، شهر) را مشخص کنید
- در بخش Proxy configuration "پروکسیهای سفارشی" را انتخاب کنید و اطلاعات پروکسیهای خود را وارد کنید
- برای HeadHunter پروکسیهای خانگی با IPهای روسی مناسب هستند — پلتفرم منطقهای است
- روی Start کلیک کنید و منتظر نتایج باشید
- دادهها را به فرمت CSV، JSON یا Excel صادر کنید
گزینه 3: Octoparse برای وظایف پیشرفته
Octoparse به شما این امکان را میدهد که پارس کردن هر عنصر صفحه HH.ru را تنظیم کنید — از جمله مواردی که در API وجود ندارد. بهعنوان مثال، میتوانید توضیحات آگهیها را بهطور کامل، اطلاعات تماس (اگر قابل مشاهده باشد) و لینکهای شرکتها را جمعآوری کنید.
- Octoparse را دانلود و نصب کنید
- یک وظیفه جدید ایجاد کنید و URL جستجوی آگهیها در hh.ru را وارد کنید
- از حالت Auto-detect استفاده کنید — Octoparse بهطور خودکار ساختار لیست را شناسایی میکند
- بررسی کنید که همه فیلدهای مورد نیاز مشخص شدهاند (عنوان، شرکت، دستمزد، شهر)
- در تنظیمات وظیفه، IP Rotation را فعال کنید و پروکسیهای خود را اضافه کنید
- تأخیر بین درخواستها را تنظیم کنید: 2-4 ثانیه
- در ابر (Cloud Extraction) برای جمعآوری مداوم اجرا کنید
💡 جغرافیای پروکسی برای HeadHunter
HeadHunter منطقه کاربر را بر اساس IP شناسایی میکند و آگهیهای منطقهای را نشان میدهد. اگر میخواهید آگهیها را از یک شهر خاص (بهعنوان مثال، فقط مسکو یا سنپترزبورگ) پارس کنید، از پروکسیهای با IP از این منطقه استفاده کنید. برای نظارت عمومی در روسیه، هر IP روسی کافی است.
اشتباهات رایج و چگونه از آنها جلوگیری کنیم
بیشتر مشکلات در پارس کردن LinkedIn و HeadHunter ناشی از همان اشتباهات است. در اینجا چکلیستی از مواردی که نباید انجام دهید:
❌ اشتباه 1: استفاده از یک IP برای همه چیز
رایجترین اشتباه تازهکارها — راهاندازی پارس کردن از IP خانگی خود یا از یک پروکسی است. به محض اینکه پلتفرم فعالیت غیرعادی را شناسایی کند — IP بهطور دائمی مسدود میشود. راهحل: پروکسیهای چرخشی با تغییر خودکار IP یا مجموعهای از چند پروکسی ثابت.
❌ اشتباه 2: سرعت درخواستها بیش از حد بالا
پارس کردن 1000 صفحه در 10 دقیقه — راهی مطمئن به سمت مسدودیت است. یک کاربر واقعی بهطور فیزیکی نمیتواند صفحات را با چنین سرعتی مرور کند. تأخیرها را تنظیم کنید: حداقل 2-3 ثانیه بین درخواستها برای HeadHunter، 5-10 ثانیه برای LinkedIn. یک تنوع تصادفی در تأخیر اضافه کنید (نه دقیقاً 3 ثانیه، بلکه از 2 تا 5 — این رفتار انسانی را شبیهسازی میکند).
❌ اشتباه 3: تغییر IP برای حساب LinkedIn
اگر از پروکسیهای چرخشی برای کار با حساب کاربری مجاز LinkedIn استفاده میکنید — هر درخواست از یک IP جدید ارسال میشود. LinkedIn این را بهعنوان هک حساب کاربری میبیند (کسی از مکانهای مختلف متصل میشود) و آن را مسدود میکند. برای جلسات مجاز فقط از پروکسیهای ثابت (sticky) یا پروکسیهای خانگی ثابت استفاده کنید.
❌ اشتباه 4: نادیده گرفتن User-Agent
User-Agent — رشتهای است که مرورگر به سرور ارسال میکند و خود را شناسایی میکند. بسیاری از ابزارهای پارس کردن بهطور پیشفرض User-Agentای از نوع "python-requests/2.28.0" ارسال میکنند — این بهسرعت ربات را شناسایی میکند. یک User-Agent واقعی از یک مرورگر مدرن تنظیم کنید. در Apify و Phantombuster این بهطور خودکار انجام میشود، در Octoparse — در تنظیمات وظیفه.
❌ اشتباه 5: پارس کردن بدون بررسی robots.txt
LinkedIn در robots.txt خود پارس کردن را ممنوع کرده و بهطور فعال با شرکتهایی که این کار را بهصورت صنعتی انجام میدهند، دعوی میکند. این به این معنا نیست که نمیتوان دادهها را برای تحلیل شخصی جمعآوری کرد — اما مهم است که خطرات قانونی را در استفاده تجاری درک کنید. HeadHunter نسبت به این موضوع بیشتر سازگار است، بهویژه اگر از API رسمی استفاده کنید.
❌ اشتباه 6: پروکسیهای عمومی ارزان
پروکسیهای رایگان یا بسیار ارزان از لیستهای عمومی — یک تله هستند. آنها قبلاً توسط بیشتر پلتفرمها مسدود شدهاند، بهطور ناپایدار کار میکنند و اغلب دادهها را سرقت میکنند. برای کار جدی به پروکسیهای پولی از ارائهدهندگان معتبر با IPهای خانگی یا موبایل واقعی نیاز دارید.
چکلیست قبل از راهاندازی پارس کردن
- ✅ از یک حساب کاربری جداگانه (نه حساب کاربری اصلی) استفاده میشود
- ✅ پروکسیهای خانگی یا موبایل متصل شدهاند
- ✅ برای LinkedIn: یک حساب کاربری = یک IP ثابت
- ✅ تأخیرها بین درخواستها تنظیم شدهاند (حداقل 3 ثانیه)
- ✅ User-Agent بهعنوان یک مرورگر واقعی تنظیم شده است
- ✅ محدودیت روزانه درخواستها به مقادیر معقول محدود شده است
- ✅ پروکسیها قبل از راهاندازی آزمایش شدهاند
- ✅ جغرافیای پروکسی با منطقه هدف مطابقت دارد
نتیجهگیری
پارس کردن آگهیهای شغلی از LinkedIn و HeadHunter — ابزاری کارآمد برای استخدامکنندگان، تحلیلگران منابع انسانی و محققان بازار کار است. نکته اصلی — انتخاب رویکرد صحیح: برای HeadHunter با API رسمی شروع کنید، برای LinkedIn از ابزارهای تخصصی مانند Phantombuster یا Apify با پروکسیهای بهدرستی تنظیم شده استفاده کنید.
نکات کلیدی از این راهنما: LinkedIn به پروکسیهای خانگی یا موبایل با IP ثابت برای هر حساب کاربری نیاز دارد، HeadHunter کمتر سختگیر است اما در حجمهای بالا نیز به پروکسی نیاز دارد. محدودیتهای درخواستها را رعایت کنید، رفتار انسانی را شبیهسازی کنید و هرگز از حساب کاربری اصلی خود برای اتوماسیون استفاده نکنید.
اگر قصد دارید نظارت منظم بر آگهیها یا جمعآوری دادههای وسیع از LinkedIn داشته باشید، توصیه میکنیم از پروکسیهای خانگی استفاده کنید — آنها حداکثر سازگاری با هر دو پلتفرم و حداقل ریسک مسدودیتها را حتی در کار طولانیمدت فراهم میکنند.