Rumah >Java >javaTutorial >Mengapa Ungkapan Selenium XPath Saya Menghasilkan Ralat 'Bukan Ungkapan XPath yang Sah'?

Mengapa Ungkapan Selenium XPath Saya Menghasilkan Ralat 'Bukan Ungkapan XPath yang Sah'?

DDD
DDDasal
2024-12-04 08:22:10329semak imbas

Why Does My Selenium XPath Expression Result in a

Ralat Penilaian Ungkapan XPath: "Bukan Ungkapan XPath yang Sah"

Apabila cuba mencari dan memilih elemen menggunakan Selenium dalam Java, anda mungkin menghadapi ralat berikut:

The string '//*[@id='app']/article/div[2]/section/div[1]/div[5]/div/section[2]/div[2]/div[1]/' is not a valid XPath expression.

Ralat ini menunjukkan bahawa ungkapan XPath yang disediakan bukan betul secara sintaksis. Terdapat dua isu utama dengan ungkapan yang diberikan:

  1. Petikan Tunggal Tidak Ditandingi: Anda menggunakan petikan tunggal ('') untuk melampirkan ungkapan XPath, tetapi anda tidak boleh menggunakan petikan tunggal dalam nilai atribut.
  2. Slash Mengekor: Ungkapan XPath tidak seharusnya berakhir dengan garis miring (/).

Untuk menyelesaikan ralat ini, anda boleh mengubah suai ungkapan XPath dalam salah satu cara berikut:

  • Alih Keluar Petikan Tunggal: Gunakan petikan berganda (") untuk melampirkan ungkapan XPath dan bukannya petikan tunggal.
  • Hapuskan Jejak Slash: Alih keluar garis miring dari hujung ungkapan.

Ungkapan XPath anda yang dibetulkan hendaklah seperti berikut:

//*[@id="app"]/article/div[2]/section/div[1]/div[5]/div/section[2]/div[2]/div[1]

Sebagai alternatif, anda juga boleh menggunakan double petikan (") untuk menyertakan ungkapan:

"//*[@id='app']/article/div[2]/section/div[1]/div[5]/div/section[2]/div[2]/div[1]"

Dengan membuat pembetulan ini, anda seharusnya dapat berjaya mencari dan memilih elemen yang diingini pada halaman web.

Atas ialah kandungan terperinci Mengapa Ungkapan Selenium XPath Saya Menghasilkan Ralat 'Bukan Ungkapan XPath yang Sah'?. 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