首页 > 编程语言 >JAVA实现爬虫

JAVA实现爬虫

时间:2022-12-11 17:01:21浏览次数:69  
标签:JAVA String 实现 爬虫 System item video println out


1.项目搭建

JAVA实现爬虫_ide


JAVA实现爬虫_System_02

JAVA实现爬虫_System_03

2.导入相关依赖

<dependency><!--jsoup只能解析网页    tika能解析视频网站  -->
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.10.2</version>
</dependency>

3.找到B站的官网链接

https://search.bilibili.com/all?keyword=%E5%81%87%E7%9A%84%E6%A0%A1%E8%8A%B1

4.编写代码

/**
* @description: 爬取网页
* @author TAO
* @date 2020/7/23 22:55
*/
public class HtmlParseUtil {
public static void main(String[] args) throws IOException {
//爬取的网页地址https://www.bilibili.com/

String url="https://search.bilibili.com/all?keyword=%E5%81%87%E7%9A%84%E6%A0%A1%E8%8A%B1";


Document document = Jsoup.parse(new URL(url), 30000);
Elements video_list = document.getElementsByClass("video-list");
Elements video_item = video_list.get(0).getElementsByClass("video-item");

for (Element el:video_item){
String videoUrl=el.getElementsByTag("a").eq(0).attr("href");
String title=el.getElementsByTag("a").eq(0).attr("title");
String time=el.getElementsByClass("time").eq(0).text();
System.out.println("-------------------");
System.out.println(videoUrl.substring(2));
System.out.println(title);
System.out.println(time);
}
System.out.println(video_item.get(0));

}
}

这里对照标签来取值

//解析网页Jsoup返回Document就是浏览器的Document对象
//所有在js中能使用的方法,这里都能使用

建议使用谷歌浏览器,比较简洁

JAVA实现爬虫_System_04

5.运行结果

JAVA实现爬虫_编写代码_05


6.数据对比

JAVA实现爬虫_ide_06


简单的JAVA实现爬虫就搞定了!!!


标签:JAVA,String,实现,爬虫,System,item,video,println,out
From: https://blog.51cto.com/u_15899048/5928423

相关文章

  • java基础-定义和调用方法
    java基础-定义和调用方法定义静态无参方法publicstaticvoidplayGame(){System.out.println("aaaa");}定义静态无参方法publicstaticv......
  • Javascript的预解析机制
    JS的预解析机制想要理解js的解析机制,不妨先了解两个概念:变量声明提升与函数声明提升。声明提升:函数声明和变量声明总是会被解释器悄悄地被"提升"到方法体的最顶部。变量......
  • 【牛角书】从零开始实现鸿蒙项目——华容道
    【华容道】小项目 本学期选修了鸿蒙应用开发课程,为了完成课程要求也为了检验自己的能力,在网上搜索资料后实现了华容道小游戏。项目运行如图正式开始一、创建项目1、选择空......
  • 使用vsftpd搭建FTP服务器并实现文件上传与下载
    一、前期准备1、仓库源准备#挂载光盘mount/dev/sr0/mnt#删除仓库源文件rm-rf/etc/yum.repos.d/*#编写仓库源文件vim/etc/yum.repos.d/vsftpd.repo#内容......
  • java 写入网页内容
    java写入网页内容publicstaticbooleanwriteHtml(StringhtmlPath,StringhtmlContent)throwsIOException{FilenewFile=newFile(htmlPath);//自动创......
  • 数据结构与算法__07--前序、中序、后序线索化二叉树,前序、中序、后序线索化二叉树遍历
    1前序//前序线索化二叉树publicvoidthreadedPreNode(HeroNodenode){if(node==null){return;}//线索化当前节点if(node.getLeft()......
  • JS实现决策报表缓存最后一次查询条件
    问题描述决策报表在打开时希望参数控件的值可以默认是上一次页面关闭前最后一次查询所选择的值。解决方案每次点击查询后将参数值保存到浏览器缓存中(适用于控件在参数......
  • 232.用栈实现队列
    232.用栈实现队列力扣题目链接(opensnewwindow)使用栈实现队列的下列操作:push(x)--将一个元素放入队列的尾部。pop()--从队列首部移除元素。peek()--返回队列......
  • java gc日志的基本知识
    回顾一下gc日志的基本知识,下面是一条gc日志:33.125:[GC[DefNew:3324k->152k(3712k),0.0025925secs]3324k>152k(11904k),0.0031680secs]从左至右,各个信息的意思为:33.1......
  • javaclient操作kafka&springboot整合kafka&kafka分区
    1.javaclient测试kafka1.配置kafka允许远程推送修改config/Kraft/server.properties文件,,将地址变为服务器公网IP地址。advertised.listeners=PLAINTEXT://localhos......