java从网页抓取数据(一个-1.11.1.jarokio-3.12.0.jar-1.12.0.jar●jsoup使用文档 )
优采云 发布时间: 2021-09-26 16:41java从网页抓取数据(一个-1.11.1.jarokio-3.12.0.jar-1.12.0.jar●jsoup使用文档
)
目录
目录
前言
最近,我想建立一个视频播放应用程序,可以播放电影和电视剧。结果,我在互联网上搜索了API接口,发现虽然爱奇艺提供的视频接口和其他视频网站可以使用,但是注册和审核应用程序的步骤很繁琐,它们的API不能在我自己的播放器中播放,,但我必须使用java编写一个程序来获取网页数据,以满足我的需要。这里我记录了实施过程
前期准备
● 所需的jar包:
jsoup-1.11.1.雅鲁藏布江http-3.12.0.雅鲁藏布江-1.12.0.雅鲁藏布江
● jsoup使用文档:
案例实现
public class Test {
private static final String BASE_URL="http://www.baiwanzy.com";//这里使用的是百万资源网的资源
public static void main(String[] args) {
asyncGet();
}
public static void asyncGet() {
String encode = URLEncoder.encode("雪鹰领主");//对查询的数据进行Url编码
String urlBaidu = "http://www.baiwanzy.com/index.php?m=vod-search&wd="+encode;
OkHttpClient okHttpClient = new OkHttpClient(); // 创建OkHttpClient对象
Request request = new Request.Builder().url(urlBaidu).build(); // 创建一个请求
okHttpClient.newCall(request).enqueue(new Callback() { // 回调
public void onResponse(Call call, Response response) throws IOException {
// 请求成功调用,该回调在子线程
getMovieList(response.body().string());
}
public void onFailure(Call call, IOException e) {
// 请求失败调用
System.out.println(e.getMessage());
}
});
}
public static void getMovieList(String datas){
Document doc = Jsoup.parse(datas);
// 根据css的后代选择器来找到相关的列表
Elements links = doc.select(".xing_vb4 a");//这里是返回的列表的类来查找相关的a标签
for (Element link : links) {
String linkHref = link.attr("href");
String linkText = link.text();
System.out.println(BASE_URL+linkHref+"==="+linkText);
}
}
}