- Chrome/Firefox gibi tarayıcıları otomatikleştirmek için bir Python kütüphanesi
- Helium, Selenium tabanlıdır ve daha yüksek seviyeli bir API sunar
- Helium betikleri genellikle Selenium betiklerinden %30-50 daha kısadır; daha okunabilir ve daha kararlıdır
- Selenium'da HTML ID, XPath, CSS seçicileri kullanmak gerekirken, Helium'da öğelere kullanıcıya görünen etiketlerle başvurulabilir
- Helium ve Selenium birlikte kullanılabilir
- Helium'un avantajları
- iFrames: Helium, iç içe geçmiş iFrame'lerin içindeki öğelerle etkileşime girebilir.
- Pencere yönetimi: Açılır pencereleri otomatik olarak algılar ve odağı onlara getirir. Kolayca geçiş yapılabilir
- Örtük bekleme: Belirli bir öğe henüz yüklenmeden tıklanmaya çalışılırsa, görünene kadar varsayılan olarak 10 saniyeye kadar bekler (Selenium'da betik başarısız olur)
- Açık bekleme: Koşul karşılanana kadar beklemek için daha iyi bir API sunar.
- Şu anda proje bakımına zaman ayrılamadığı için ücretsiz destek verilmiyor
- PR'ler kabul ediliyor ve katkılar memnuniyetle karşılanıyor.
- Geçmiş
- Helium, 2013'te Polonyalı bir BT girişimi olan BugFree Software için geliştirildi
- 2019'da şirket kapandı ve Helium açık kaynak haline getirildi
- Java ve Python'da kullanılabiliyordu, ancak artık yalnızca Python destekleniyor
- Helium adı, Selenium gibi bir kimyasal elementten gelir ve daha hafif olmasını ifade eder
1 yorum
Hacker News görüşleri
Selenium projesinin kurucusu, Helium'un API'sinin Selenium'un ilk API'sine benzediğini belirtiyor. Farklı otomasyon API stilleri var ve herkesi memnun edecek tek bir API olmadığını vurguluyor. Kişisel olarak basit, fonksiyonel tarzı tercih ettiğini söylüyor
Çoğu Python linter'ı ve en iyi uygulama dokümanı
import *kullanımını önermez. Bunun yerineimport helium as hgibi bir kullanımın yeterince kısa olduğu belirtiliyorSelenium ile geçici otomasyon yapmış bir kullanıcı, Helium'un doğal dile benzeyen API'sinin faydalı olacağını söylüyor
Selenium için bir wrapper'ın daha hafif olduğu iddiası sorgulanıyor. Wrapper'lar doğası gereği daha fazla kod ve özellik içerir; daha az kaynak kullanmaz veya daha hızlı olmaz
Helium'un Playwright, Selenium, Cypress ve Puppeteer ile nasıl karşılaştırıldığı merak ediliyor
Helium'un ortadan kaybolmaması için gösterilen çaba takdir ediliyor
Belirli bir Chrome tarayıcı profil adıyla başlatmanın veya mevcut Firefox/Chrome oturumunu yeniden kullanmanın mümkün olup olmadığı soruluyor
Otomasyonun gerçek bir kullanıcıdan ayırt edilmesinin ne kadar kolay olduğu sorgulanıyor. Otomasyonla web kullanıldığında erişimin engellenme riski olabileceği belirtiliyor
Helium kullanılarak ajan akışları oluşturulabileceği söyleniyor. Veri toplama veya soruları yanıtlama işleri yapabilecek sandbox instance'ları oluşturmaya ilgi duyuluyor
Helium'un kullanıcı alanlarını nasıl tanıdığı merak ediliyor. Etiketleri okuyup altındaki veya sağındaki öğeyi kullanıcı alanı olarak varsayıp varsaymadığı soruluyor