Java实现简单的网络爬虫

一、导读

在学习了网络编程和IO流之后,在网上发现可以实现Java简单的爬虫。读了几篇感觉其实很容易理解,自己就试着写了一下。

大致思路

方法其实很简单,就是从网络上获取文件的地址,自己只需要在编辑器里,获取到所要下载的文件地址,存入内存,然后在将其写到磁盘上就行了。

二、直接上手—以获取某张图片为例

2.1、 我们首先要做的就是先随便从网上找一个简单的文件。

找到一个网站,然后快捷键 F12 进入控制台,刷新一下,获取它所有的请求
在这里插入图片描述

在这些请求中,找到你所要抓取的文件,然后选中发现左侧会有文件请求的所有信息,通过这些信息,我们可以找到文件的地址,将文件地址复制保存。
在这里插入图片描述

2.2在我们的编辑器里面进行IO流操作获取文件

其实,编码的思路很清晰,我们根据网上的地址,可以获取到文件的路径,在Java中的网络编程中,有一个URL 类——统一资源定位符,它指向万维网上的“资源”指针。从我们的API中可以简单了解一下其构造方法和使用
在这里插入图片描述

在这里插入图片描述
其中的 openConnection() 方法是我们这次用到的,它用于返回一个URLConnection实例,表示与URL引用的远程对象的URL。
然后就是用IO流进行载入和写进磁盘
完整代码就如下

 public static void main(String[] args) throws Exception {
        //获取远程地址
        URL url = new URL("http://k.sinaimg.cn/n/photo/100/w1500h1000/20190814/57eb-icapxpi5159348.jpg/w610h406092.jpg");
        HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
        InputStream inputStream = urlConnection.getInputStream();
        FileOutputStream fileOutputStream = new FileOutputStream("g:\\Test.jpg");

        //写入磁盘
        byte[] buffer = new byte[1024];
        int len;
        while ((len=inputStream.read(buffer))!=-1){
            fileOutputStream.write(buffer,0,len);
        }

        //关闭流
        fileOutputStream.close();
        inputStream.close();
        urlConnection.disconnect();
    }

然后再看一下我们的结果,
在这里插入图片描述
完美!!!

三、扩展

以此类推,我们可以根据这个,可以获取一些歌曲什么的。方法也是一样的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值