Press ESC to close

Python Selenium multi threading | Python Selenium Çoklu Tarayıcı Açma

Python’da Selenium ile çoklu iş parçacığı (multi-threading) kullanarak paralel web otomasyonu gerçekleştirebilirsiniz. Bu, aynı anda birden fazla tarayıcı örneği oluşturarak işleri eşzamanlı olarak yürütmenizi sağlar. İşte basit bir örnek:

import threading
from selenium import webdriver

# İş parçacığı işlevi
def thread_func():
    # Tarayıcı örneği oluştur
    driver = webdriver.Chrome()

    # Otomasyon işlemlerini burada gerçekleştir
    # Örnek olarak, bir web sitesini açalım
    driver.get("https://www.example.com")

    # İşlemler tamamlandıktan sonra tarayıcıyı kapat
    driver.quit()

# İş parçacıkları listesi
threads = []

# İstediğiniz kadar iş parçacığı oluşturabilirsiniz
thread_count = 5

# İş parçacıklarını oluştur ve başlat
for _ in range(thread_count):
    thread = threading.Thread(target=thread_func)
    thread.start()
    threads.append(thread)

# Tüm iş parçacıklarının tamamlanmasını bekle
for thread in threads:
    thread.join()

Yukarıdaki örnekte, thread_func() adlı bir iş parçacığı işlevi tanımladık. Bu işlev, her iş parçacığı için ayrı bir tarayıcı örneği oluşturacak ve otomasyon işlemlerini gerçekleştirecektir. İşlemler tamamlandığında, tarayıcıyı kapatır.

Ana programda, istediğiniz sayıda iş parçacığı oluşturabilir ve başlatabilirsiniz. Bu örnekte, thread_count değişkeni 5 olarak ayarlandı. Daha sonra, for döngüsüyle iş parçacıklarını oluşturduk, başlattık ve threads listesine ekledik.

Son olarak, for döngüsüyle oluşturulan tüm iş parçacıklarının tamamlanmasını bekledik (join() yöntemi).

Kodu ihtiyaçlarınıza göre uyarlayabilir ve otomasyon işlemlerini thread_func() içinde gerçekleştirebilirsiniz. Ancak, Selenium’un çoklu iş parçacık desteği sınırlıdır ve bazı durumlarda tarayıcıların eşzamanlı kullanımı sorunlara neden olabilir. Bu nedenle, çoklu iş parçacığı kullanırken dikkatli olmanız ve tarayıcıların doğru şekilde senkronize edildiğinden emin olmanız önemlidir.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

@Katen on Instagram
Bu hata mesajını yalnızca WordPress yöneticileri görebilir

Hata: 1 kimliğine sahip hiçbir akış bulunamadı.

Bir akış oluşturmak için lütfen Instagram Akışı ayarlar sayfasına gidin.