CAPSOLVER
Blog
Cara Menyelesaikan Captcha Cloudflare Turnstile dengan Selenium

Cara Mengatasi Captcha Turnstile Cloudflare dengan Selenium

Logo of CapSolver

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

Langkah-langkah untuk Menerapkan:

  1. Daftar untuk akun CapSolver.
  2. Integrasikan API CapSolver ke dalam skrip Selenium Anda.

Contoh Kode:

python Copy
# 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.

Langkah-langkah untuk Menerapkan:

  1. Unduh paket ChromeDriver yang tidak terdeteksi, seperti undetected-chromedriver.
  2. Konfigurasikan Selenium untuk menggunakan versi yang dimodifikasi ini.

Contoh Kode:

python Copy
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:

  1. Instal SeleniumBase melalui pip:

    bash Copy
    pip install seleniumbase
  2. Gunakan fitur SeleniumBase untuk mengelola interaksi web dan menangani CAPTCHA.

Contoh Kode:

python Copy
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:

  1. Instal plugin Selenium Stealth:

    bash Copy
    pip install selenium-stealth
  2. Integrasikan plugin dengan pengaturan Selenium Anda.

Contoh Kode:

python Copy
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:

  1. Dapatkan daftar proksi premium dari penyedia tepercaya.
  2. 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.

Lebih lanjut