Karena persyaratan proyek, informasi merek kendaraan dan informasi sistem kendaraan diperlukan. Kemarin, saya menghabiskan satu hari mempelajari informasi situs web JSoup merangkak. Proyek ini ditulis menggunakan maven+spring+springmvc+mybatis.
Alamat Panduan Pengembangan JSoup
Ini adalah alamat situs web yang perlu dirangkak https://car.autohome.com.cn/zhaoche/pinpai/
1. Pertama tambahkan dependensi di pom.xml
Karena saya perlu menyimpan gambar secara lokal, saya menambahkan paket commons-net.
<!-https://mvnrepository.com/artifact/org.jsoup/jsoup-> <dependency> <groupid> org.jsoup </proupid> <ArtifactId> JSoup </arttifactid> <version> 1.10.3 </version> </dependency> <!--Versi 1.10.3 </version> </Versi> </Dependency> <! https://mvnrepository.com/artifact/commons-net/commons-net-> <dependency> <Groupid> commons-net </proupid> <Artifactid> Commons-net </arttifactid> <version> 3.3 </version> </dependency>
2. Implementasi kode crawler
@Controller@requestMapping ("/car/") Public Class CarController {// Gambar Path Saving Private Static Final String SaveImgPath = "C: // IMGS"; /** * @Title: insert Brand name and image crawling and adding* @Description: * @param @throws IOException * @return void * @throws * @date January 29, 2018 at 4:42:57 pm */ @RequestMapping("add") public void insert() throws IOException { //Define the address where the data you want to crawl String url = "https://car.autohome.com.cn/zhaoche/pinpai/"; // Dapatkan dokumen teks halaman web doc = jsoup.connect (url) .get (); // Dapatkan konten teks berdasarkan elemen nama kelas elemensbyclass = doc.geteLementsbyclass ("uibox-con"); // Transfer koleksi kelas untuk (elemen elemen: elementsbyclass) {// Dapatkan jumlah tag anak dari class int childnodesize_1 = element.childnodesize (); // loop untuk mendapatkan konten dalam tag anak untuk (int i = 0; i <childnodesize_1; i ++) {// Dapatkan alamat gambar logo mobil string tupian = element.child (i) .Child (0) .Child (0) .Child (0) .Child (0) .attr ("src"); // Dapatkan nama merek string pinpai = element.child (i) .child (0) .child (1) .text (); // keluaran konten untuk melihat apakah itu benar System.out.println ("Gambar Logo Mobil Alamat ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- URL (Tupian_1); FileOutputStream (File baru (SaveImgpath, ImageName)); Volkswagen yang diimpor* semua perlu bersepeda untuk mendapatkan nama pabrik usaha patungan dan anak perusahaannya*/// Dapatkan jumlah seri mobil int childnodesize_2 = elemen.child (i) .Child (1) .Child (0) .Childnodesize (); childNodesize_3 = element.child (i) .child (1) .childnodesize (); Element.Child (I) .Child (1) .Child (0) .Child (J) .Child (0) .Child (0) .Child (0) .text () System.out.println ("Sistem Mobil -----------" CAPXI); Pabrik usaha masing -masing untuk (int j = 0; j <childnodesize_3; j ++) {int childnodesize_4 = element.child (i) .child (1) .Child (j) .Childnodesize (); Joint Venture Information String hezipinpai = element.child (i) .child (1) .child (j) .child (0) .text (); // Secara siklus mendapatkan informasi sistem kendaraan dari pabrik usaha patungan untuk (int l = 0; l <childnodesize_4; l ++) {string chexi = element.child (i) .Child (1) .Child (J). } System.out.println ("*******************");3. Hasil Operasi
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.