Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mendapatkan Nilai Elemen HTML daripada Bingkai dan IFrames?
Mengakses Elemen HTML dalam Bingkai dan IFrames
Halaman web selalunya menggabungkan bingkai atau iframe, mengandungi elemen yang tidak boleh diakses melalui traversal DOM standard. Artikel ini membincangkan pengekstrakan data, khususnya pautan video, daripada struktur bersarang tersebut. Penggunaan terus GetElementsByTagName("video")
pada dokumen utama selalunya gagal. Memahami seni bina bingkai dan iframe adalah penting.
Bingkai dan IFrames: Dokumen Asingkan
Bingkai dan iframe ialah dokumen HTML bebas yang dibenamkan dalam dokumen induk. Setiap mempunyai kandungan dan fungsi HTML sendiri, memerlukan pemprosesan individu. Setiap objek dokumen HTML bingkai diakses melalui sifat HtmlWindow.Document
.
Mengakses dan Menghuraikan Dokumen Terbenam
Kawalan WebBrowser
menawarkan akses kepada bingkai melalui harta Document.Window.Frames
. Setiap elemen dalam koleksi ini mewakili dokumen terbenam berasingan yang memerlukan penghuraian bebas.
<code class="language-csharp">var documentFrames = browser.Document.Window.Frames; foreach (HtmlWindow frame in documentFrames) { var videoElement = frame.Document.Body .GetElementsByTagName("VIDEO").OfType<HtmlElement>().FirstOrDefault(); }</code>
Pengendalian Pengecualian: Penghuraian Teguh
Menghuraikan bingkai dan iframe selalunya memberikan pengecualian seperti UnauthorizedAccessException
atau InvalidOperationException
, yang menunjukkan akses terhad. Untuk mengelakkan gangguan proses, pengecualian ini harus ditangkap dan dikendalikan dengan baik:
<code class="language-csharp">try { // Parse frame or iframe document } catch (UnauthorizedAccessException) { } // Ignore: Access denied catch (InvalidOperationException) { } // Ignore: Invalid operation</code>
Ringkasan
Dengan memahami sifat bebas bingkai dan iframe serta menghuraikan setiap dokumen terbenam secara individu, anda boleh mendapatkan semula elemen dan atribut dengan berkesan daripada semua bahagian halaman web, termasuk yang bersarang dalam bingkai atau iframe. Ini memudahkan pengikisan dan automasi web yang komprehensif.
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nilai Elemen HTML daripada Bingkai dan IFrames?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!