简单http客户端程序

要求和目的

深入理解http协议以及http下载相关功能的程序设计

实验环境

Java语言,PC平台

实验要求

  1. 基本要求:使用Socket类,实现一个简单的HTTP客户端程序。用户输入URL,该程序可以从服务器下载URL指定的资源,并将之存储在磁盘上。
  2. 不仅可以下载HTML,还可以自动下载HTML中包含的图像等其他资源。       
  3. 将下载的网页或其他内容在图形界面上显示。

实验分析

        实验目的和要求是深入理解http协议以及http下载相关功能的程序设计,要求我们使用Socket类,实现一个简单的HTTP客户端程序。用户输入URL,该程序可以从服务器下载URL指定的资源,并将之存储在磁盘上。不仅可以下载HTML,还可以自动下载HTML中包含的图像等其他资源。 将下载的网页或其他内容在图形界面上显示。

实验过程

首先由用户输入自己想要下载的URL资源地址,在此以深圳大学网址首页进行展示

对网页网址的html资源文件进行下载操作,通过page方法实现,首先创建一个URL对象

利用HttpURLConnection类打开连接,并设置请求属性

建立连接,并建立输出流,再利用流对象进行文件处理,将资源保存到本地文件中去

完成后关闭对应流文件即可

除了下载指定URL的html资源文件外,还需将文件中自带的图像文件给下载保存到本地文件中去,因此,我们首先需要阅读HTML文件以获得对应图像文件的网址

通过观察源代码以及学习HTML相关知识,可以知道,在html文件中,图像格式均为

因此,我们在阅读html文件的每一行时,若存在图像文件,其前缀必为 img src=“”,因此我们只需通过正则表达式逐行获取该前缀后的双引号中的内容加上原URL地址,即为图像地址,再进行下载即可

实验结果

源代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值