1. 豆瓣圖書最受關注
1.1 創建SpringBoot項目或者Maven項目
1.2 引入jsoup
<dependency><!-- jsoup HTML parser library @ https://jsoup.org/ --><groupId>org.jsoup</groupId><artifactId>jsoup</artifactId><version>1.15.3</version></dependency>
注意版本一定是1.15.3,1.15.4可能無法獲取信息
1.3 爬取信息
先找到豆瓣圖書網址
豆瓣
先找到整個布局的部分,list-col2,里面存儲著相應的元素標簽
所以document的select標簽就是ul.list-col2 li,意思是選擇ul里面標簽list-col2,然后選擇里面的li
li里面分成兩個部分,包含cover和info,我這里取出info里面的信息
標題通過h4.title里面的a標簽獲取
作者直接通過p.author獲取
里面的評分需要兩層獲取,先獲取p標簽,然后獲取limian的span標簽p.entry-star-small span.average-rating
public BaseResponse<String> famousDouBanBook(){String url = "https://book.douban.com/";Document document = null;try {document = Jsoup.connect(url).get();} catch (IOException e) {e.printStackTrace();}System.out.println(document);Elements elements = document.select("ul.list-col2 li");for (Element element : elements) {String title = element.select("h4.title a").text();String coverUrl = element.select("div.cover img").attr("src");String rate = element.select("p.entry-star-small span.average-rating").text();;String author = element.select("p.author").text();System.out.println("書名:" + title);System.out.println("封面:" + coverUrl);System.out.println("評分:" + rate);System.out.println("作者:" + author);System.out.println("------------------------");}return ResultUtils.success("ok");}
可以采用創建相關的實體類來存儲信息。