一个简易的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();
        }
    }

}
相关推荐
2501_941807265 分钟前
在迪拜智能机场场景中构建行李实时调度与高并发航班数据分析平台的工程设计实践经验分享
java·前端·数据库
一 乐9 分钟前
餐厅点餐|基于springboot + vue餐厅点餐系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端
ss27312 分钟前
volatile的可见性、安全发布的秘密与ThreadLocal原理
java·开发语言
小猪配偶儿_oaken20 分钟前
SpringBoot实现单号生成功能(Java&若依)
java·spring boot·okhttp
宋情写20 分钟前
JavaAI04-RAG
java·人工智能
毕设源码-钟学长23 分钟前
【开题答辩全过程】以 中医健康管理系统为例,包含答辩的问题和答案
java
susu108301891123 分钟前
docker部署 Java 项目jar
java·docker·jar
Haooog25 分钟前
LangChain4j 学习
java·学习·大模型·langchain4j
爬山算法26 分钟前
Hibernate(25)Hibernate的批量操作是什么?
java·后端·hibernate
2501_9418752826 分钟前
从日志语义到可观测性的互联网工程表达升级与多语言实践分享随笔
java·前端·python