Rumah >Java >javaTutorial >Menggunakan JSoup untuk mengikis Web dalam pembangunan API Java
Dengan pertumbuhan pesat maklumat Internet, semakin banyak aplikasi perlu mendapatkan data yang berkaitan daripada halaman Web. JSoup ialah penghurai HTML Java yang boleh mengekstrak dan memanipulasi data dengan mudah daripada halaman web. Dalam pembangunan API Java, JSoup ialah alat yang penting dan biasa digunakan. Artikel ini akan memperkenalkan cara menggunakan JSoup untuk mengikis web.
1. Pengenalan dan penggunaan asas JSoup
1 Pengenalan JSoup
JSoup ialah penghurai HTML Java, pembangun boleh memperkenalkannya ke dalam projek melalui Maven , cuma tambah kebergantungan berikut:
<dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.14.2</version> </dependency>
2. Penggunaan asas
Menggunakan JSoup memerlukan terlebih dahulu menghuraikan kandungan halaman HTML ke dalam objek Document
, dan kemudian menggunakan objek ini untuk mendapatkan kandungan dalam halaman pelbagai elemen. Berikut ialah contoh penggunaan asas JSoup:
String url = "https://www.baidu.com/"; Document document = Jsoup.connect(url).get(); // 通过 URL 加载页面 // 获取页面标题 String title = document.title(); // 获取页面所有超链接 Elements links = document.select("a[href]"); // 循环遍历页面中的所有链接 for(Element link: links){ String linkHref = link.attr("href"); String linkText = link.text(); }
2. Gunakan JSoup untuk merangkak Web
1 Dapatkan maklumat halaman melalui URL
Kaedah menggunakan JSoup Ya Dapatkan maklumat halaman melalui alamat URL yang ditentukan, seperti yang ditunjukkan di bawah: connect(url).get()
String url = "https://www.baidu.com/"; Document document = Jsoup.connect(url).get();2. Menghuraikan elemen HTML Mengikut struktur halaman, gunakan kaedah
untuk mendapatkan dengan cepat elemen yang diperlukan. Berikut ialah contoh penggunaan JSoup untuk mendapatkan semua pautan: select()
Elements links = document.select("a[href]"); for(Element link: links){ String linkHref = link.attr("href"); String linkText = link.text(); System.out.println(linkHref + " , " + linkText); }
Elements inputs = document.select("input[class=s_ipt]");Sintaks pemilih yang disokong juga termasuk: pemilih teg, pemilih kelas, pemilih ID, pemilih atribut dan pemilih pemilihan gabungan, pseudo- pemilih, dsb. 4. Pemprosesan acara JSoup boleh mengendalikan acara pada halaman dengan mudah. Sebagai contoh, anda boleh menggunakan kod berikut untuk mendapatkan elemen input yang diperlukan dan mengikat pendengar acara kepadanya:
Element input = document.select("input[type=text").first(); input.attr("oninput", "console.log('input value has changed')");5 Serahkan borang JSoup juga boleh membantu kami menyerahkan borang. Sebagai contoh, anda boleh menggunakan kod berikut untuk melengkapkan penyerahan ke kotak carian Baidu:
String url = "https://www.baidu.com/s"; String keyword = "Java"; Document document = Jsoup.connect(url) .data("wd", keyword) .post();3. Ringkasan Artikel ini memperkenalkan cara menggunakan JSoup untuk merangkak web, dan penggunaan asas JSoup. Gunakan JSoup untuk mendapatkan elemen halaman, penapis, pemegang acara, serahkan borang, dsb. Sudah tentu, apabila menggunakan JSoup, anda perlu memberi perhatian untuk mematuhi undang-undang, peraturan dan etika yang berkaitan, dan anda tidak boleh mendapatkan maklumat orang lain dengan cara yang menyalahi undang-undang dan tatatertib.
Atas ialah kandungan terperinci Menggunakan JSoup untuk mengikis Web dalam pembangunan API Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!