Rotasi agen pengguna saat melakukan scraping – begini cara saya menyelesaikannya
Titik awal
Beberapa permintaan ke domain yang sama sering kali mengakibatkan captcha atau kesalahan 403. Penyebab: skrip saya mengirimkan agen pengguna yang sama untuk setiap permintaan – itu terlihat seperti bot. Tujuannya adalah untuk membuat header lebih realistis – terutama User-Agent
memutar.
⚙️ Pendekatan & Pengaturan
Saya tidak menginginkan emulasi browser yang besar, tetapi hanya ingin mengimplementasikan agen pengguna yang berputar secara acak di klien HTTP Python saya (httpx).
Saya mengambil sekumpulan string umum untuk desktop dan seluler, dicampur berdasarkan distribusi di dunia nyata.
Contoh daftar
user_agents = [ "Mozilla/5.0 (Windows NT 10.0; Win64; x64)...", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)...", "Mozilla/5.0 (Linux; Android 11; SM-G991B)...", "Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X)...", ... ]
Python: Ubah agen pengguna pada setiap permintaan
import httpx import random url = "https://zielseite.de/" headers = { "User-Agent": random.choice(user_agents), "Accept": "text/html,application/xhtml+xml", "Accept-Language": "de-DE,de;q=0.9", } response = httpx.get(url, headers=headers) print(response.status_code)
Temuan utama
- Memutar agen pengguna saja tidak banyak gunanya – seluruh blok header penting
- Agen pengguna seluler sering kali tampak lebih kredibel (banyak situs yang mengutamakan perangkat seluler)
- Selalu dengan
Accept-Language
,Accept
, mungkinReferer
menggabungkan
Opsional: Putar seluruh preset header
header_presets = [ { "User-Agent": "...Windows...", "Accept": "text/html,application/xhtml+xml", "Accept-Language": "de-DE,de;q=0.9" }, { "User-Agent": "...iPhone...", "Accept": "text/html,application/xhtml+xml", "Accept-Language": "de-DE,de;q=0.9" }, ... ] headers = random.choice(header_presets)
Bonus: Apa yang akan saya hindari
- Agen pengguna fiktif atau formatnya salah (misalnya dari generator lama)
- Rotasi simultan proxy + agen pengguna tanpa alasan
- Agen pengguna tanpa header lain yang cocok – menonjol
Kesimpulan
Rotasi agen pengguna bukanlah obat mujarab – tetapi merupakan alat yang berguna untuk mengatasi hambatan sepele. Bukan hanya string itu sendiri yang penting, tetapi keseluruhan set header harus cocok satu sama lain.
Per: 04/2025 – bekerja dengan andal untuk target pengikisan umum.