Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mengekstrak Maklumat dari dalam Shadow Root Menggunakan Selenium Python?

Bagaimana untuk Mengekstrak Maklumat dari dalam Shadow Root Menggunakan Selenium Python?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-19 06:42:021091semak imbas

How to Extract Information from within a Shadow Root Using Selenium Python?

Cara Mengekstrak Maklumat dari dalam Shadow Root Menggunakan Selenium Python

Selenium menyediakan rangka kerja yang teguh untuk automasi web, termasuk keupayaan untuk mengekstrak maklumat daripada elemen web yang dimuatkan secara dinamik seperti akar bayang. Panduan ini akan menunjukkan cara untuk mengatasi cabaran mengekstrak label produk dan medan lain daripada kedai dalam talian tertentu dalam akar bayang.

Cabaran: Mengekstrak Maklumat daripada Akar Bayangan

Apabila menghadapi akar bayang, anda perlu meneroka strategi alternatif untuk lokasi dan pengekstrakan unsur. Pendekatan XPath konvensional mungkin tidak mencukupi. Panduan ini membentangkan penyelesaian yang memanfaatkan kaedah execute_script() Selenium untuk mengakses akar bayang dan mendapatkan semula maklumat yang diingini.

Penyelesaian: Menggunakan ShadowRoot.querySelector()

Untuk ekstrak label produk, gunakan pendekatan berikut:

<code class="python">driver.get('https://www.tiendasjumbo.co/buscar?q=mani')
item = driver.execute_script("return document.querySelector('impulse-search').shadowRoot.querySelector('div.group-name-brand h1.impulse-title span.formatted-text')")
print(item.text)
</code>

Output:

La especial mezcla de nueces, maní, almendras y marañones x 450 g

Kesimpulan

Penyelesaian ini menunjukkan cara mengekstrak dengan berkesan maklumat dari dalam akar bayang menggunakan Selenium Python, menyediakan teknik yang boleh dipercayai untuk mengautomasikan interaksi web walaupun dalam senario yang mencabar.

Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak Maklumat dari dalam Shadow Root Menggunakan Selenium Python?. 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