Cara Mengikis Data Halaman Web Dijana Secara Dinamik melalui JavaScript
Walaupun mengikis web ialah teknik biasa untuk mengekstrak data daripada tapak web, ia menjadi lebih mencabar apabila data dijana oleh JavaScript selepas interaksi pengguna. Dalam kes ini, data pada mulanya tidak tersedia dalam sumber HTML, memerlukan langkah tambahan untuk mengaksesnya.
Menggunakan PhantomJS untuk Pengikisan Data Dinamik
Untuk mengikis sedemikian secara dinamik data yang dijana, alat PhantomJS boleh digunakan. PhantomJS meniru pelayar web tanpa kepala yang berinteraksi dengan halaman web melalui API JavaScript. Dengan menskrip PhantomJS, anda boleh mensimulasikan interaksi pengguna dan menangkap data yang anda perlukan.
Berikut ialah coretan menggunakan PhantomJS untuk mengekstrak data yang dikehendaki daripada tapak web yang disediakan:
const page = require('webpage').create(); page.open('http://vtis.vn/index.aspx', function () { page.evaluate(function () { // Simulate clicking the "Danh sách chậm" button document.querySelector('.IconMenuColumn').querySelector('a').click() }); // Wait for data to load setTimeout(function () { // Extract the data let data = page.content; }, 1000); });
Alternatif Pendekatan: Integrasi API
Walaupun mengikis boleh berkesan, adalah penting untuk meneroka pilihan alternatif. Jika tapak web yang anda mengikis menawarkan API, menggunakannya adalah lebih cekap dan boleh diselenggara daripada mengikis skrin. Cuba hubungi pemilik tapak web untuk bertanya tentang sebarang API yang tersedia.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengikis Data Laman Web Dinamik Menggunakan JavaScript dan PhantomJS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!