Bagaimana Berkesan Menunggu Pelbagai Elemen untuk Dimuatkan dalam Selenium dengan Python?

Linda Hamilton
Lepaskan: 2024-10-28 23:52:30
asal
538 orang telah melayarinya

How to Effectively Wait for Multiple Elements to Load in Selenium with Python?

Python: Menunggu Berbilang Elemen Dimuatkan

Senarai yang dimuatkan AJAX boleh memberikan cabaran untuk pengesahan keterlihatan dalam Selenium. Untuk menyemak dengan pasti sama ada senarai yang mengandungi berbilang elemen telah dimuatkan sepenuhnya, pertimbangkan pendekatan berikut:

Tunggu Eksplisit dengan WebDriverWait

Menggunakan WebDriverWait, anda boleh mendorong keadaan visibility_of_all_elements_located():

<code class="python">elements = WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.CSS_SELECTOR, "ul.ltr li[id^='t_b_'] > a[id^='t_a_'][href]")))</code>
Salin selepas log masuk

Sebagai alternatif, anda boleh menggunakan XPath:

<code class="python">elements = WebDriverWait(driver, 20).until(EC.visibility_of_all_elements_located((By.XPATH, "//ul[@class='ltr']//li[starts-with(@id, 't_b_')]/a[starts-with(@id, 't_a_') and starts-with(., 'Category')]")))</code>
Salin selepas log masuk

Menunggu Bilangan Elemen Tertentu

Untuk menunggu bilangan elemen tertentu, seperti 10, gunakan fungsi lambda :

<code class="python">myLength = 9
WebDriverWait(driver, 20).until(lambda driver: len(driver.find_elements_by_xpath("//ul[@class='ltr']//li[starts-with(@id, 't_b_')]/a[starts-with(@id, 't_a_') and starts-with(., 'Category')]")) > int(myLength))</code>
Salin selepas log masuk
<code class="python">myLength = 10
WebDriverWait(driver, 20).until(lambda driver: len(driver.find_elements_by_xpath("//ul[@class='ltr']//li[starts-with(@id, 't_b_')]/a[starts-with(@id, 't_a_') and starts-with(., 'Category')]")) == int(myLength))</code>
Salin selepas log masuk

Nota Tambahan

  • Ingat untuk mengimport pakej Selenium yang diperlukan.
  • Pastikan bahawa pencari yang digunakan adalah unik dan khusus kepada yang dikehendaki elemen.
  • Pertimbangkan untuk meneroka perbincangan dan rujukan yang disediakan untuk mendapatkan cerapan lanjut.

Atas ialah kandungan terperinci Bagaimana Berkesan Menunggu Pelbagai Elemen untuk Dimuatkan dalam Selenium dengan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!