Nasıl sonsuz beklentiler edinirim? [çiftleme]
Selenium kullanıyorum ve sayfanın yüklenmesini durmaksızın beklemem gerekiyor (çünkü yüklenmesi birkaç saat sürüyor) ve ondan verileri ayrıştırmam gerekiyor, bunu nasıl yapabilirim?
Bunun gibi bir kod kullanıyorum:
wait = WebDriverWait(driver, 10)
wait.until(EC.visibility_of_element_located((By.CLASS_NAME, "modal-title")))
Yanıtlar
2 Marios
Bunu başarmak için WebDriverWait () kullanabilirsiniz. Örneğin, aşağıdaki kod 5 saat boyunca veya öğeyi bulana kadar bekler.
hours_to_wait = 5
element = WebDriverWait(driver, hours_to_wait *60*60).until(
EC.visibility_of_all_elements_located((By.XPATH, 'hereIsYourXpath')))
veya:
element = WebDriverWait(driver, hours_to_wait *60*60).until(
EC.presence_of_element_located((By.ID, "myDynamicElement"))
)
veya sizin durumunuzda :
element = WebDriverWait(driver, hours_to_wait *60*60).until(
EC.presence_of_element_located((By.CLASS_NAME, "modal-title"))
)
bunları içe aktarmanız gerekiyor:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
Nicole Kidman, Michael Keaton ve Val Kilmer'in Batman Olarak Paylaştığı Bu 1 Çekici Özelliğe Bayıldı
Gene Simmons, KISS Çizgi Romanlarının Potansiyel Olarak "İnsanlığı Yeniden Yaratabileceğini" Söyledi
Tom Girardi Dolandırıcılık Suçlamalarından Yargılanma Yetkisinin Belirlenmesi İçin Duruşmaya Katıldı
Charly Reynolds Yakın Zamandaki Vokal Kord Ameliyatını Açıkladı: 'Şarkı Söylemekte Sorun Yaşıyordum'