Mengikis kandungan dinamik dari halaman web boleh menimbulkan cabaran apabila menggunakan kaedah statik seperti urllib2.urlopen(request) dalam Python . Kandungan sedemikian sering dijana dan dilaksanakan oleh JavaScript yang dibenamkan dalam halaman.
Satu pendekatan untuk menangani isu ini ialah memanfaatkan rangka kerja Selenium dengan Phantom JS sebagai pemacu web. Pastikan Phantom JS dipasang dan binarinya tersedia dalam laluan semasa.
Berikut ialah contoh untuk menggambarkan:
1 2 3 4 5 |
|
Kod ini akan mendapatkan semula halaman tanpa sokongan JavaScript. Untuk mengikis dengan sokongan JS, gunakan Selenium:
1 2 3 4 5 |
|
Sebagai alternatif, anda boleh menggunakan perpustakaan Python yang direka khusus untuk mengikis tapak web dipacu JavaScript, seperti dryscrape:
1 2 3 4 5 6 7 |
|
Atas ialah kandungan terperinci Bagaimana untuk Mengikis Kandungan Diberikan JavaScript Dinamik dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!