
Lucas Mitchell
Automation Engineer

curl_cffi.Menggali daftar pekerjaan telah menjadi fondasi bagi perusahaan rekrutmen, peneliti pasar, dan agregator pekerjaan. Namun, papan pekerjaan utama telah menerapkan langkah keamanan yang canggih yang dapat menghentikan pengumpulan data Anda dalam hitungan detik. Jika pernah menghadapi pemblokiran IP langsung atau loop verifikasi tanpa akhir saat mencoba menggali iklan pekerjaan, Anda tidak sendirian. Tantangannya terletak pada membuat skrip otomatis Anda tidak terdeteksi sebagai perilaku penjelajahan manusia. Panduan ini memberikan peta jalan teknis komprehensif untuk membantu Anda menggali daftar pekerjaan secara efektif sambil mempertahankan profil deteksi yang rendah.
Platform papan pekerjaan dan situs jaringan profesional berinvestasi secara signifikan dalam keamanan untuk melindungi data properti mereka dan memastikan stabilitas situs. Mereka terutama menggunakan empat lapisan deteksi untuk mengidentifikasi dan memblokir penggali.
Kebanyakan papan pekerjaan melacak jumlah permintaan yang datang dari satu alamat IP. Jika Anda melebihi ambang batas tertentu, IP Anda akan diblokir sementara atau permanen. IP datacenter sangat rentan karena mudah diidentifikasi sebagai milik farm server daripada pengguna nyata.
Sistem anti-bot modern seperti Cloudflare dan DataDome melihat lebih jauh dari User-Agent Anda. Mereka menganalisis handshake TLS (Transport Layer Security), memeriksa suite enkripsi dan ekstensi tertentu. Jika skrip Python Anda menggunakan perpustakaan requests bawaan, fingerprint JA3-nya akan segera memberi tahu bahwa itu adalah bot.
Pengguna manusia tidak mengklik tautan setiap 0,5 detik atau berpindah dalam pola yang sempurna linear. Penggali yang menunjukkan perilaku robot—seperti interval permintaan tetap atau muatan CSS/gambar yang hilang—cepat terdeteksi oleh mesin analisis perilaku.
Ketika situs mencurigai tetapi tidak yakin, itu akan memicu tantangan. Ini bisa berupa pemeriksaan eksekusi JavaScript sederhana atau CAPTCHA yang kompleks. Tanpa cara otomatis untuk menyelesaikan ini, alur kerja penggalian Anda akan berhenti total.
Untuk membangun penggali yang tangguh, Anda harus mengatasi setiap lapisan deteksi dengan langkah teknis yang spesifik.
Menggunakan satu IP adalah cara tercepat untuk diblokir. Sebaliknya, Anda seharusnya menggunakan kumpulan proksi rumah tangga. Berbeda dengan IP datacenter, IP rumah tangga diberikan oleh Penyedia Layanan Internet (ISP) kepada rumah tangga nyata, membuatnya jauh lebih sulit dibedakan dari lalu lintas sah.
| Jenis Proksi | Risiko Deteksi | Biaya | Kasus Penggunaan Terbaik |
|---|---|---|---|
| Datacenter | Tinggi | Rendah | Situs keamanan rendah, pengujian |
| Rumah Tangga | Rendah | Menengah | Papan pekerjaan dan mesin pencari keamanan tinggi |
| Mobile (4G/5G) | Sangat Rendah | Tinggi | Sistem anti-bot yang sangat agresif |
Ketika Anda menggali daftar pekerjaan, pastikan penyedia proksi Anda mendukung rotasi otomatis. Ini memastikan bahwa setiap permintaan—atau sesi—berasal dari lokasi geografis dan IP yang berbeda.
Seperti yang disebutkan sebelumnya, perpustakaan standar seperti requests atau urllib memiliki fingerprint TLS yang berbeda. Untuk menyelesaikan ini, Anda seharusnya menggunakan curl_cffi, yang memungkinkan skrip Anda meniru handshake TLS browser nyata seperti Chrome atau Firefox.
from curl_cffi import requests
# Meniru fingerprint TLS Chrome 120
response = requests.get(
"https://www.target-job-board.com/jobs?q=software+engineer",
impersonate="chrome120",
headers={
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"Accept-Language": "en-US,en;q=0.9",
}
)
print(response.status_code)
Dengan menyesuaikan User-Agent Anda dengan profil TLS yang sesuai, Anda secara signifikan mengurangi kemungkinan diblokir oleh Cloudflare atau Akamai.
Bahkan dengan header dan proksi yang sempurna, Anda akan segera menghadapi tantangan. Papan pekerjaan sering menggunakan Cloudflare Turnstile atau reCAPTCHA untuk memverifikasi pengguna. Menyelesaikan ini secara manual tidak mungkin dalam skala besar. Ini adalah saat CapSolver menjadi bagian penting dari tumpukan otomatisasi Anda.
CapSolver menyediakan API yang mulus untuk menyelesaikan berbagai jenis CAPTCHA. Misalnya, jika Anda menghadapi tantangan Cloudflare Turnstile saat menggunakan API pencarian pekerjaan atau menggali platform pekerjaan utama, Anda dapat menggunakan implementasi resmi berikut:
import requests
import time
api_key = "YOUR_CAPSOLVER_API_KEY"
site_key = "0x4XXXXXXXXXXXXXXXXX" # Ditemukan di HTML situs target
site_url = "https://www.target-job-board.com"
def solve_turnstile():
payload = {
"clientKey": api_key,
"task": {
"type": 'AntiTurnstileTaskProxyLess',
"websiteKey": site_key,
"websiteURL": site_url
}
}
res = requests.post("https://api.capsolver.com/createTask", json=payload)
task_id = res.json().get("taskId")
if not task_id:
return None
while True:
time.sleep(1)
result_res = requests.post("https://api.capsolver.com/getTaskResult", json={"clientKey": api_key, "taskId": task_id})
result = result_res.json()
if result.get("status") == "ready":
return result.get("solution", {}).get('token')
if result.get("status") == "failed":
return None
token = solve_turnstile()
Mengintegrasikan ini ke dalam alur kerja Anda memastikan bahwa penggali Anda dapat terus menjalankan tugasnya tanpa intervensi manusia, secara efektif mempertahankan uptime jalur data Anda.
Klaim Kode Bonus CapSolver Anda
Tingkatkan anggaran otomatisasi Anda secara instan!
Gunakan kode bonus CAP26 saat mengisi ulang akun CapSolver Anda untuk mendapatkan tambahan 5% bonus pada setiap pengisian ulang — tanpa batas.
Klaim sekarang di Dasbor CapSolver Anda
Kesalahan umum adalah mengirimkan permintaan "telanjang". Browser nyata selalu mengirimkan header Referer dan berbagai header Sec-CH-UA (Client Hints). Ketika Anda menggali daftar pekerjaan, selalu atur referer ke halaman beranda situs atau halaman hasil pencarian sebelumnya.
https://www.google.com/ atau domain situs itu sendiri.gzip, deflate, br (pastikan kode Anda dapat mengekstrak ini).| Strategi | Efektivitas | Upaya Implementasi | Dianjurkan Untuk |
|---|---|---|---|
| Python Dasar Requests | Sangat Rendah | Rendah | Blog pribadi yang tidak dilindungi |
| Browser Tanpa Kepala (Selenium) | Menengah | Menengah | Situs dengan JavaScript berat |
| Browser Rahasia + Proksi | Tinggi | Tinggi | Platform pekerjaan keamanan tinggi |
| API Penggalian Web | Sangat Tinggi | Rendah | Ekstraksi data pekerjaan skala perusahaan |
Meskipun keberhasilan teknis penting, Anda juga harus memprioritaskan penggalian etis. Selalu periksa file robots.txt situs dan ketentuan layanannya. Menurut panduan dari Konsorsium World Wide Web (W3C ), pengumpulan data etis melibatkan menghormati kesehatan server target dengan tidak membanjiri dengan permintaan berlebihan. Selain itu, Electronic Frontier Foundation menekankan bahwa menggali data yang tersedia secara publik umumnya dilindungi, tetapi Anda harus menghindari mengakses informasi pengguna pribadi atau dinding login tanpa izin.
Menggali daftar pekerjaan tanpa terblokir membutuhkan pendekatan berlapis. Dengan menggabungkan rotasi proksi rumah tangga, peniruan fingerprint TLS, dan penyelesaian CAPTCHA otomatis melalui CapSolver, Anda dapat membangun sistem yang kuat yang meniru perilaku manusia. Ingatlah bahwa lingkungan penggalian web terus berkembang; tetap memperbarui tren manajemen keamanan terbaru adalah kunci untuk mempertahankan keunggulan kompetitif Anda.
Secara umum, menggali iklan pekerjaan yang tersedia secara publik legal di banyak yurisdiksi, selama Anda tidak melanggar Undang-Undang Penipuan dan Penipuan Komputer (CFAA) atau hukum hak cipta. Selalu konsultasikan dengan pengacara untuk kasus penggunaan spesifik.
Untuk situs keamanan tinggi, terbaik untuk memutar IP setiap permintaan atau setiap beberapa menit untuk menghindari deteksi pola.
Banyak platform profesional sangat terbatas. Meskipun beberapa profil dan pekerjaan publik terlihat, sebagian besar data berada di balik dinding login. Menggali di balik login membawa risiko hukum dan teknis yang lebih tinggi.
Browser tanpa kepala standar seperti Puppeteer atau Selenium meninggalkan "jejak" seperti navigator.webdriver = true. Anda seharusnya menggunakan plugin seperti stealth untuk menyembunyikan properti ini.
Cara paling efektif untuk menghindari pemblokiran IP adalah kombinasi proksi rumah tangga dan interval permintaan acak (jitter).
Pelajari arsitektur pengambilan data web Rust yang dapat diskalakan dengan reqwest, scraper, pengambilan data asinkron, pengambilan data browser tanpa tampilan, rotasi proxy, dan penanganan CAPTCHA yang sesuai aturan.

Mengotomasi penyelesaian CAPTCHA dengan Nanobot dan CapSolver. Gunakan Playwright untuk menyelesaikan reCAPTCHA dan Cloudflare secara otomatis.
