Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa kaedah Selenium getText() saya membuang ralat apabila menggunakan pencari nama kelas?

Mengapa kaedah Selenium getText() saya membuang ralat apabila menggunakan pencari nama kelas?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-01 06:35:30197semak imbas

Why is my Selenium getText() method throwing an error when using a class name locator?

Menyelesaikan masalah: Mengekstrak Teks dengan Selenium WebDriver dalam Python

Masalah:

Apabila cuba mendapatkan teks daripada elemen web menggunakan kaedah getText() Selenium WebDriver, anda menerima ralat semasa menggunakan pencari nama kelas. Ralat ini berpunca daripada ID dinamik yang berubah apabila halaman web dimuat semula, menjadikan pengesan By.CLASS_NAME tidak boleh dipercayai.

Culitan HTML:

<code class="html"><span class="current-text" id="yui_3_7_0_4_1389185744113_384">my text</span></code>

Python Kod:

<code class="python">text = driver.find_element_by_class_name("current-stage").getText("my text")</code>

Penyelesaian:

Untuk menyelesaikan isu ini, mudahkan kod anda dengan mengalih keluar getText("teks saya") hujah:

<code class="python">text = driver.find_element_by_class_name("current-stage").text</code>

Penjelasan:

Kaedah getText() mengembalikan kandungan teks elemen web yang ditentukan. Dalam kes ini, pencari nama kelas mengenal pasti elemen yang betul, dan atribut teks mendapatkan semula kandungan teksnya. Percubaan untuk menentukan teks yang dijangkakan sebagai argumen kedua untuk getText() adalah tidak perlu dan boleh menyebabkan kekeliruan.

Atas ialah kandungan terperinci Mengapa kaedah Selenium getText() saya membuang ralat apabila menggunakan pencari nama kelas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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