




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
java抓取网页内容三种方式2011-12-05 11:23一、GetURL.javaimport java.io.*;import .*; public class GetURL public static void main(String args) InputStream in = null; OutputStream out = null;try / 检查命令行参数if (args.length != 1)& (args.length != 2) throw new IllegalArgumentException(Wrong number of args);URL url = new URL(args0); /创建 URLin = url.openStream(); / 打开到这个URL的流if (args.length = 2) / 创建一个适当的输出流out = new FileOutputStream(args1);else out = System.out;/ 复制字节到输出流byte buffer = new byte4096;int bytes_read;while(bytes_read = in.read(buffer) != -1)out.write(buffer, 0, bytes_read);catch (Exception e) System.err.println(e);System.err.println(Usage: java GetURL );finally /无论如何都要关闭流try in.close(); out.close(); catch (Exception e) 运行方法:C:javajava GetURL :8080/kj/index.html index.html二、geturl.jspOK-,创建文件成功三、HttpClient.javaimport java.io.*;import .*;public class HttpClient public static void main(String args) try / 检查命令行参数if (args.length != 1) & (args.length != 2)throw new IllegalArgumentException(Wrong number of args);OutputStream to_file;if (args.length = 2) to_file = new FileOutputStream(args1);/输出到文件else to_file = System.out;/输出到控制台URL url = new URL(args0);String protocol = url.getProtocol();if (!protocol.equals(http) throw new IllegalArgumentException(Must use http: protocol);String host = url.getHost();int port = url.getPort();if (port = -1) port = 80; String filename = url.getFile();Socket socket = new Socket(host, port);/打开一个socket连接InputStream from_server = socket.getInputStream();/获取输入流PrintWriter to_server = new PrintWriter(socket.getOutputStream();/获取输出流to_server.print(GET + filename + nn);/请求服务器上的文件to_server.flush(); / Send it right now!byte buffer = new byte4096;int bytes_read;/读服务器上的响应,并写入文件。while(bytes_read = from_server.read(buffer) != -1)to_file.write(buffer, 0, bytes_read);socket.close();to_file.close();catch (Exception e) System.err.println(e);System.err.println(Usage: java HttpClient );运行方法:C:javajava HttpClient :8080/kj/index.html index.html注意中文可能会显示乱码,在得到源码后,应该做相应的转码工作,例如:public static String GetURLstr(String strUrl)InputStream in = null;OutputStream out = null;String strdata = ;tryURL url = new URL(strUrl); / 创建 URLin = url.openStream(); / 打开到这个URL的流out = System.out;/ 复制字节到输出流byte buffer = new byte4096;int bytes_read;while (bytes_read = in.read(buffer) != -1)String reads = new String(buffer, 0, bytes_read, UTF-8);/System.out.print(reads);strdata = strdata + reads;/ out.write(buffer, 0, bytes_read);in.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省宿迁市项目部消防安全测试题八(含答案)
- 2025-2030中国酸奶产品创新及消费者偏好调研分析报告
- 2025-2030中国远程办公软件市场渗透率与商业模式创新报告
- 2025-2030中国近视防控器械家校联动推广模式研究报告
- 2025-2030中国车载场景饮料包装安全性与便利性报告
- 2025-2030中国航运金融衍生品风险管理模式研究
- 2025-2030中国膨化食品生产工艺创新及市场拓展研究报告
- 2025-2030中国脑机接口技术临床应用前景与伦理边界研究
- 九年级语文单元教学设计全集
- 2025-2030中国糖果胶凝剂原料来源与生产成本分析报告
- (2025)时事政治试题库附答案详解
- 网络安全威胁建模规范
- 2025年双鸭山宝清县公安局公开招聘留置看护队员100人工作考试考试参考试题及答案解析
- 2025年度济南市工会社会工作专业人才联合招聘(47人)笔试参考题库附答案解析
- 统编版2025-2026学年语文六年级上册第一、二单元综合测试卷(有答案)
- 2025年成考语文试卷及答案
- 2025年国企面试题型及答案
- 5年(2021-2025)高考1年模拟物理真题分类汇编专题04 机械能守恒、动量守恒及功能关系(广东专用)(解析版)
- T-CWAN 0166-2025 不锈钢波纹管非熔化极气体保护焊工艺规范
- 2025-2026浙教版(2024)七年级上册科学教学计划
- 2025年全国中小学生天文知识竞赛试题库
评论
0/150
提交评论