Cara Menyelesaikan Captcha Cloudflare Turnstile dengan Selenium
Cara Mengatasi Captcha Turnstile Cloudflare dengan Selenium
Ethan Collins
Pattern Recognition Specialist
11-Oct-2024
Apakah web scraper Anda mengalami kesulitan dengan Cloudflare yang memblokir permintaan Anda? Cloudflare's Turnstile Captchas dirancang untuk mengidentifikasi dan menghambat lalu lintas otomatis, menciptakan rintangan signifikan untuk web scraping dan otomatisasi. Namun, dengan memanfaatkan browser headless seperti Selenium, Anda dapat secara efektif mengatasi hambatan ini. Meskipun demikian, pengaturan Selenium standar mungkin masih memicu pertahanan anti-bot yang canggih dari Cloudflare.
Dalam blog ini, kita akan membahas beberapa teknik efektif untuk mengatasi Cloudflare Turnstile Captchas menggunakan Selenium
Memahami Cloudflare Turnstile Captchas
Cloudflare Turnstile Captchas adalah tantangan tingkat lanjut yang ditujukan untuk membedakan antara pengguna manusia dan bot otomatis. Tidak seperti CAPTCHA tradisional, Turnstile menggunakan berbagai penilaian berbasis perilaku dan interaksi, seperti menganalisis gerakan mouse, pola klik, dan metrik interaksi lainnya, untuk menentukan legitimasi pengguna.
Mengapa Memilih Selenium?
Selenium adalah alat yang kuat untuk mengotomatiskan browser web, memungkinkan Anda untuk mensimulasikan tindakan pengguna seperti klik, pengiriman formulir, dan navigasi. Namun, karena sifatnya yang otomatis, pengaturan Selenium konvensional masih dapat diidentifikasi oleh sistem keamanan Cloudflare. Untuk secara efektif mengelola Turnstile Captchas, mengintegrasikan Selenium dengan alat dan teknik tambahan dapat secara signifikan meningkatkan keberhasilan web scraping Anda.
Teknik Efektif untuk Menyelesaikan Cloudflare Turnstile Captchas dengan Selenium
1. Menerapkan CapSolver
Salah satu metode paling efisien untuk menyelesaikan CAPTCHA adalah menggunakan layanan penyelesaian CAPTCHA seperti CapSolver. Layanan ini memanfaatkan algoritma canggih dan solver manusia untuk menyelesaikan berbagai jenis CAPTCHA dengan cepat dan akurat, termasuk Cloudflare Turnstile.
Kode Bonus
Kesulitan dengan kegagalan berulang untuk menyelesaikan captcha yang menjengkelkan sepenuhnya?
Temukan penyelesaian captcha otomatis yang mulus dengan teknologi Auto Web Unblock yang didukung AI Capsolver!
Klaim Kode Bonus Anda untuk solusi captcha teratas; CapSolver: WEBS. Setelah menebusnya, Anda akan mendapatkan bonus tambahan 5% setelah setiap pengisian ulang, Tidak Terbatas
Integrasikan API CapSolver ke dalam skrip Selenium Anda.
Contoh Kode:
pythonCopy
# pip install requests
import requests
import time
api_key = "YOUR_API_KEY" # kunci api capsolver Anda
site_key = "0x4XXXXXXXXXXXXXXXXX" # kunci situs situs target Anda
site_url = "https://www.yourwebsite.com" # url halaman situs target Anda
def capsolver():
payload = {
"clientKey": api_key,
"task": {
"type": 'AntiTurnstileTaskProxyLess',
"websiteKey": site_key,
"websiteURL": site_url,
"metadata": {
"action": "" # opsional
}
}
}
res = requests.post("https://api.capsolver.com/createTask", json=payload)
resp = res.json()
task_id = resp.get("taskId")
if not task_id:
print("Gagal membuat tugas:", res.text)
return
print(f"Mendapatkan taskId: {task_id} / Mendapatkan hasil...")
while True:
time.sleep(1) # penundaan
payload = {"clientKey": api_key, "taskId": task_id}
res = requests.post("https://api.capsolver.com/getTaskResult", json=payload)
resp = res.json()
status = resp.get("status")
if status == "ready":
return resp.get("solution", {}).get('token')
if status == "failed" or resp.get("errorId"):
print("Penyelesaian gagal! tanggapan:", res.text)
return
token = capsolver()
print(token)
Dalam kode ini, ganti YOUR_API_KEY, 0x4XXXXXXXXXXXXXXXXX, dan https://www.yourwebsite.com dengan kunci API CapSolver Anda yang sebenarnya, kunci situs dari situs target, dan URL halaman yang Anda targetkan, masing-masing. Skrip ini akan membuat tugas untuk menyelesaikan Turnstile Captcha dan mengembalikan token solusi.
2. Menggunakan ChromeDriver yang Tidak Terdeteksi
Untuk menghindari deteksi oleh Cloudflare, menggunakan versi ChromeDriver yang tidak terdeteksi sangat penting. Sistem anti-bot Cloudflare dapat dengan mudah mengenali instance ChromeDriver standar, yang menyebabkan tantangan CAPTCHA. ChromeDriver yang tidak terdeteksi memodifikasi sidik jari browser dan perilaku untuk meminimalkan peluang deteksi.
Konfigurasikan Selenium untuk menggunakan versi yang dimodifikasi ini.
Contoh Kode:
pythonCopy
from undetected_chromedriver.v2 import Chrome, ChromeOptions
options = ChromeOptions()
options.add_argument('--headless') # Gunakan mode headless jika diperlukan
driver = Chrome(options=options)
driver.get('https://example.com')
# Lakukan tindakan yang diperlukan dan tangani CAPTCHA
3. Memanfaatkan SeleniumBase
SeleniumBase adalah ekstensi untuk Selenium yang meningkatkan fungsionalitas dan kemudahan penggunaan untuk web scraping. Ini menyederhanakan pengelolaan interaksi web dan mengotomatiskan tugas kompleks secara lebih efektif.
Langkah-langkah untuk Menerapkan:
Instal SeleniumBase melalui pip:
bashCopy
pip install seleniumbase
Gunakan fitur SeleniumBase untuk mengelola interaksi web dan menangani CAPTCHA.
Contoh Kode:
pythonCopy
from seleniumbase import BaseCase
class MyTestClass(BaseCase):
def test_example(self):
self.open('https://example.com')
# Lakukan tindakan yang diperlukan dan tangani CAPTCHA
4. Memanfaatkan Plugin Selenium Stealth
Plugin Selenium Stealth membantu menutupi upaya otomatisasi Anda, sehingga lebih sulit bagi Cloudflare untuk mendeteksi penggunaan bot. Plugin ini memodifikasi perilaku browser untuk mensimulasikan interaksi pengguna yang realistis.
Langkah-langkah untuk Menerapkan:
Instal plugin Selenium Stealth:
bashCopy
pip install selenium-stealth
Integrasikan plugin dengan pengaturan Selenium Anda.
Contoh Kode:
pythonCopy
from selenium import webdriver
from selenium_stealth import stealth
driver = webdriver.Chrome()
stealth(driver,
languages=["en-US", "en"],
vendor="Google Inc.",
platform="Windows",
webgl_vendor="Google Inc.",
render="WebKit",
fix_hairline=True
)
driver.get('https://example.com')
# Lakukan tindakan yang diperlukan dan tangani CAPTCHA
5. Memanfaatkan Proksi Premium
Menggunakan proksi premium dapat membantu Anda menghindari larangan IP dengan mendistribusikan lalu lintas Anda di berbagai alamat. Proksi berkualitas tinggi secara signifikan mengurangi risiko deteksi dan pemblokiran oleh Cloudflare.
Langkah-langkah untuk Menerapkan:
Dapatkan daftar proksi premium dari penyedia tepercaya.
Konfigurasikan Selenium untuk menggunakan proksi ini untuk permintaan web.
Kesimpulan
Berhasil menavigasi Cloudflare Turnstile Captchas membutuhkan kombinasi teknik dan alat tingkat lanjut. Dengan mengintegrasikan CapSolver dengan Selenium, menggunakan versi ChromeDriver yang tidak terdeteksi, memanfaatkan SeleniumBase, menggunakan plugin siluman, dan menggunakan proksi premium, Anda dapat meningkatkan kemampuan web scraping Anda sambil memastikan kepatuhan dengan protokol keamanan web. Selalu ingat untuk mematuhi standar etika dan menggunakan alat ini secara bertanggung jawab dalam upaya web scraping Anda.
Pernyataan Kepatuhan: Informasi yang diberikan di blog ini hanya untuk tujuan informasi. CapSolver berkomitmen untuk mematuhi semua hukum dan peraturan yang berlaku. Penggunaan jaringan CapSolver untuk kegiatan ilegal, penipuan, atau penyalahgunaan sangat dilarang dan akan diselidiki. Solusi penyelesaian captcha kami meningkatkan pengalaman pengguna sambil memastikan kepatuhan 100% dalam membantu menyelesaikan kesulitan captcha selama pengambilan data publik. Kami mendorong penggunaan layanan kami secara bertanggung jawab. Untuk informasi lebih lanjut, silakan kunjungi Syarat Layanan dan Kebijakan Privasi.