Saya rasa semua orang sudah biasa dengan Stesen B. Sebenarnya, terdapat banyak carian di laman web perangkak Stesen B. Walau bagaimanapun, apa yang saya baca di atas kertas akhirnya cetek, dan saya pasti tahu bahawa saya perlu melakukannya secara terperinci, jadi saya di sini. Pada akhirnya, jumlah data yang dirangkak ialah 7.6 juta .
Persediaan
Buka Stesen B mula-mula, cari video di halaman utama dan klik padanya. Untuk operasi biasa, buka alat pembangun. Kali ini, matlamatnya adalah untuk mendapatkan maklumat video dengan merangkak API yang disediakan oleh Stesen B tanpa menghuraikan halaman web Kelajuan menghuraikan halaman web adalah terlalu perlahan dan alamat IP mudah disekat.
Semak pilihan JS dan tekan F5 untuk muat semula
Menemui alamat api
Salinnya, alih keluar kandungan yang tidak diperlukan dan dapatkan https://api.bilibili.com/x/web-interface/archive/stat?aid=15906633 Bukanya dengan penyemak imbas dan anda akan mendapat data json berikut
Pengekodan secara praktikal
Baiklah, kini kod boleh dikodkan Data diperoleh melalui lelaran berterusan melalui permintaan Untuk menjadikan crawler lebih cekap, multi-threading boleh digunakan.
Kod teras
Merangkak berulang
Bahagian paling penting dalam keseluruhan projek ialah kira-kira 20 baris kod, yang agak ringkas.
Kesan berjalan lebih kurang begini jumlahnya ialah berapa banyak pautan yang telah dirangkak.
Bagi cara memprosesnya selepas merangkak, ia bergantung pada pilihan anda, saya menyimpannya sebagai fail csv dahulu, dan kemudian meringkaskan dan memasukkannya ke dalam pangkalan data.
Jadual pangkalan data
Sejak saya merangkak kandungan ini beberapa bulan lalu, data sebenarnya ketinggalan sedikit.
Jumlah data
Semak sepuluh video teratas yang paling banyak dimainkan
Semak sepuluh video teratas dengan balasan terbanyak
Atas ialah kandungan terperinci Gunakan Python untuk merangkak keseluruhan maklumat video stesen B. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!