Para IMDb red capitán chino arrastrándose comentario , por ejemplo, el uso de Jsoup camino
pom
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.12.1</version>
</dependency>
Página de enlaces para ver los elementos de la página
comments是当前页所有的评论,然后一级一级的获取爬取自己需要的数据就行了
package com.shinedata;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;
/**
* @ClassName Main
* @Author yupanpan
* @Date 2019/10/11 14:19
*/
public class Main {
public static void main(String[] args) {
try {
Document document = Jsoup.connect("https://movie.douban.com/subject/30295905/comments?status=P").get();
Element comments = document.getElementById("comments");
Elements commentItems = comments.getElementsByClass("comment-item");
for (Element element:commentItems){
Elements commentList = element.getElementsByClass("comment");
Element comment = commentList.get(0);
//获取昵称
Elements h3s = comment.getElementsByTag("h3");
Elements commentInfos = h3s.get(0).getElementsByClass("comment-info");
Elements as = commentInfos.get(0).getElementsByTag("a");
String nickName = as.get(0).text();
//获取评论
Elements shorts = comment.getElementsByClass("short");
String p = shorts.get(0).text();
System.out.println(nickName+":"+p);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
efecto
procesamiento de páginas: la misma solicitud para obtener el enlace (véase la siguiente figura), se puede armar una solicitud para obtener los datos, no hay un número total de páginas, tiene un número total de páginas, después gire el número total de páginas en él, pero hay muchos sitios hacen de aterrizaje y un código de validación y otras operaciones, se pueden simular por medio de los PhantomJS visitan el sitio web.