Ahli Semalt Menjelaskan Cara Mengikis Website AJAX Menggunakan Python

Mengikis web adalah metode yang menggunakan penggunaan perangkat lunak untuk mengekstrak data dari halaman web. Ada banyak alat yang digunakan untuk mengikis web dengan python, beberapa di antaranya adalah; Sky, Scrapy, Requests, dan Beautiful Soup. Namun, sebagian besar alat ini dibatasi oleh fakta bahwa mereka hanya mengambil HTML statis yang berasal dari server dan bukan bagian dinamis yang dibuat oleh JavaScript.

Namun, ada beberapa teknik di mana masalah ini dapat diatasi:

1. Browser Otomatis

Anda dapat menggunakan peramban otomatis seperti Selenium atau Splash yang merupakan peramban lengkap yang berjalan tanpa kepala. Namun, pengaturannya bisa sangat rumit, jadi kami akan fokus pada opsi kedua di bawah ini.

2. Mencegah panggilan AJAX

Ini melibatkan upaya untuk mencegat panggilan AJAX dari halaman dan mencoba untuk memutar ulang atau mereproduksi mereka.

Pada artikel ini, kami akan fokus bagaimana menangkap panggilan AJAX dan memutar ulang mereka dengan memanfaatkan Perpustakaan Permintaan dan browser Google Chrome. Meskipun kerangka kerja seperti Scrapy dapat memberi Anda solusi yang lebih efisien dalam hal pengikisan, itu tidak diperlukan untuk semua kasus. Panggilan AJAX sebagian besar dilakukan terhadap API yang akan mengembalikan objek JSON yang mudah ditangani oleh perpustakaan Permintaan.

Hal pertama yang perlu Anda ketahui adalah mencoba memutar ulang panggilan AJAX seperti menggunakan API tidak berdokumen. Karena itu, Anda harus melihat semua panggilan yang dilakukan halaman. Anda dapat pergi ke situs tersebut, bermain dengannya sebentar dan melihat bagaimana beberapa informasi diberikan. Setelah selesai bermain, kembalilah dan mulailah menggores.

Sebelum kita masuk ke perinciannya, mari kita pahami dulu bagaimana halaman itu bekerja. Jika Anda mengunjungi halaman toko oleh negara, pilih negara mana saja, dan halaman tersebut akan memberikan informasi tentang toko tersebut. Setiap kali Anda memilih negara, situs web membuat toko baru untuk menggantikan yang lama. Ini dicapai dengan menggunakan, dan panggilan AJAX ke server meminta informasi. Niat kami sekarang adalah menangkap panggilan itu dan memutarnya kembali.

Untuk melakukannya, yang harus Anda lakukan adalah membuka DevTools browser Chrome yang dihibur dan pergi ke subbagian XHR. XHR adalah antarmuka yang melakukan permintaan HTTP dan HTTPS. Dengan demikian permintaan AJAX akan ditampilkan di sini. Ketika Anda mengklik dua kali panggilan AJAX, Anda akan menemukan banyak informasi di toko. Anda juga dapat melihat pratinjau permintaan.

Anda akan mencatat bahwa banyak data dikirim ke server. Namun, jangan khawatir karena tidak semuanya diperlukan. Untuk melihat data apa yang Anda butuhkan, Anda dapat membuka konsol dan melakukan berbagai permintaan posting ke situs web. Sekarang setelah Anda mengetahui cara kerja halaman tersebut dan telah menguraikan panggilan AJAX, Anda dapat menulis scraper Anda.

Anda mungkin bertanya, 'mengapa tidak menggunakan browser otomatis?' Solusinya sederhana; selalu mencoba memutar ulang panggilan AJAX sebelum memulai sesuatu yang jauh lebih berat dan rumit seperti browser otomatis. Lebih sederhana dan lebih ringan.

png

mass gmail