Web scraper: cara mengumpulkan data dari web

Menyalin harga dari situs pemasok ke spreadsheet secara manual masih bisa untuk dua puluh produk. Untuk dua ribu produk, pekerjaan itu menghabiskan seminggu dan tetap ada salah ketik. Web scraper (juga disebut parser) adalah program kecil yang membuka halaman-halaman untuk Anda, mengambil potongan informasi yang sama dari masing-masing halaman, dan menyimpannya sebagai tabel. Berikut apa yang bisa dilakukannya, apa yang perlu disiapkan, dan aturan mana yang harus diikuti.

Untuk apa scraper berguna
Scraper berguna setiap kali informasi yang sejenis ada di banyak halaman yang mirip:
- Harga dan stok. Pantau bagaimana harga pemasok berubah atau barang mana yang habis.
- Katalog pemasok. Pindahkan nama, deskripsi, gambar, dan harga ke toko Anda sendiri.
- Iklan baris. Kumpulkan iklan properti, mobil, atau lowongan kerja dari papan iklan publik ke dalam satu tabel.
- Acara dan artikel. Kumpulkan tanggal, judul, dan tautan dari kalender publik atau halaman berita.
Kumpulkan hanya yang boleh Anda kumpulkan
Sebelum apa pun, pastikan data itu wajar untuk diambil:
- Hanya halaman publik. Jika Anda harus masuk ke akun untuk melihat datanya, scraper bukan alat yang tepat.
- Baca ketentuan situs. Banyak situs menyebutkan apa yang boleh dan tidak boleh dikumpulkan. Platform besar, mesin pencari, dan media sosial biasanya melarangnya; gunakan fitur ekspor resmi atau API mereka sebagai gantinya.
- Patuhi batas kecepatan. Jeda beberapa detik antarhalaman menjaga beban situs tetap rendah. Jangan pernah mencoba mengakali captcha atau pemblokiran.
- Ikuti undang-undang privasi. Nama, email, dan nomor telepon orang adalah data pribadi, dan banyak negara membatasi pengumpulannya dengan ketat. Jangan sertakan data tersebut.
Pada akhirnya, boleh tidaknya Anda mengumpulkan dan memakai data sebuah situs adalah keputusan Anda, jadi periksa dulu sebelum mulai.
Jelaskan halamannya
Scraper ditulis untuk struktur halaman yang sebenarnya, jadi jelaskan dengan tepat:
- Tautan ke halaman daftar dan tautan ke satu halaman produk.
- Kira-kira berapa banyak halamannya, misalnya "sekitar 40 halaman daftar dengan masing-masing 24 produk".
- Satu atau dua halaman yang disimpan dari browser Anda (File > Save page as) atau tangkapan layarnya.
Daftar kolom seperti kolom tabel
Bayangkan hasilnya sebagai spreadsheet dan sebutkan kolom-kolomnya secara berurutan, masing-masing dengan contoh:
- Nama: "Talenan kayu ek, besar"
- Harga: "34.90"
- Harga lama: "39.90", jika barang sedang diskon
- Tersedia: "ya"
- Tautan ke halaman produk dan tautan ke gambar
Sepuluh kolom yang jelas lebih baik daripada tiga puluh kolom yang samar. Tambahkan aturan yang Anda butuhkan, seperti "hanya barang yang tersedia".
Pilih format dan tempat menjalankannya
- CSV bisa dibuka di spreadsheet apa pun dan diimpor ke sebagian besar sistem toko online.
- Excel lebih mudah jika Anda akan menyaring dan mengurutkan secara manual.
- JSON cocok untuk developer yang akan memuat data di tempat lain.
Scraper berjalan di komputer Anda sendiri dengan Python, jadi data langsung sampai ke Anda, dan Anda bisa menjalankannya lagi kapan pun Anda butuh angka terbaru.
Saat situs berubah
Scraper mengikuti halaman seperti tampilannya hari ini. Jika situs berganti desain, scraper mungkin tidak lagi menemukan kolom-kolomnya dan perlu diperbarui. Situs juga bisa membatasi kunjungan meskipun dengan kecepatan yang sopan. Perhitungkan hal ini jika Anda mengandalkan data tersebut setiap minggu.
Ringkasnya
Tentukan halaman publik dan kolom mana yang Anda butuhkan, cek ketentuan situs, jaga kecepatan yang sopan, dan jangan sertakan data pribadi. Jika Anda lebih suka tidak menulis kodenya sendiri, pesan web scraper: Anda mengirim situs, kolom yang diinginkan, dan satu atau dua halaman yang disimpan, lalu menerima kode Python, file pengaturan, dan panduan langkah demi langkah untuk menjalankannya dengan hasil berupa CSV, Excel, atau JSON. Pembayaran baru dicairkan setelah Anda menerima hasil kerja.