一个简易的URL爬虫程序(java)

该程序是一个简单的Java程序,用于从指定的URL中获取网页内容并保存到本地文件。通过URL类打开指定的URL链接,并使用openStream()方法获取输入流。然后使用Scanner类读取输入流中的内容,并使用PrintWriter类将读取到的内容写入到本地文件中。

在该程序中,程序打开了腾讯新闻(https://news.qq.com/),并将网页内容保存为qq.html文件。

java 复制代码
import java.io.BufferedInputStream;
import java.io.FileWriter;
import java.io.InputStream;
import java.io.PrintWriter;
import java.net.URL;
import java.util.Scanner;

public class SimpleUrlCrawler {

    public static void main(String[] args) {
        try {
            // 创建URL对象,指定要抓取的网页地址
            URL url = new URL("https://news.qq.com/");

            // 打开URL连接获取输入流
            InputStream input = url.openStream();

            // 使用缓冲输入流包装输入流,提高读取效率
            Scanner cin = new Scanner(new BufferedInputStream(input));

            // 创建PrintWriter对象,用于写入文件
            PrintWriter cout = new PrintWriter(new FileWriter("qq.html"));

            // 逐行读取输入流中的内容,并写入文件
            while (cin.hasNextLine()) {
                cout.println(cin.nextLine());
            }

            // 关闭输入流、输出流
            input.close();
            cin.close();
            cout.close();
        } catch (Exception e) {
            // 处理异常
            e.printStackTrace();
        }
    }

}
相关推荐
!停2 分钟前
数据结构空间复杂度
java·c语言·算法
她说..3 分钟前
验签实现方案整理(签名验证+防篡改+防重放)
java·经验分享·spring boot·java-ee·bladex
爱吃山竹的大肚肚9 分钟前
异步导出方案
java·spring boot·后端·spring·中间件
没有bug.的程序员16 分钟前
Spring Boot 与 Redis:缓存穿透/击穿/雪崩的终极攻防实战指南
java·spring boot·redis·缓存·缓存穿透·缓存击穿·缓存雪崩
草履虫建模16 分钟前
Java 基础到进阶|专栏导航:路线图 + 目录(持续更新)
java·开发语言·spring boot·spring cloud·maven·基础·进阶
Zhu_S W16 分钟前
Java多进程监控器技术实现详解
java·开发语言
Anastasiozzzz17 分钟前
LeetCodeHot100 347. 前 K 个高频元素
java·算法·面试·职场和发展
青芒.19 分钟前
macOS Java 多版本环境配置完全指南
java·开发语言·macos
Hx_Ma1620 分钟前
SpringMVC框架(上)
java·后端
幼稚园的山代王21 分钟前
JDK 11 LinkedHashMap 详解(底层原理+设计思想)
java·开发语言