URL的常用方法和获取网页数据实例
发布日期:2021-10-03 01:52:08
浏览次数:13
分类:技术文章
本文共 1689 字,大约阅读时间需要 5 分钟。
=======================================URL常用方法 //创建一个URL实例 URL imooc = new URL("http://www.imooc.com"); //?后面表示参数,#后面表示锚点 URL url = new URL(imooc, "/search/course?words=java"); System.out.println("协议:"+url.getProtocol()); System.out.println("主机:"+url.getHost()); System.out.println("端口:"+url.getPort());//没有指定端口号,默认使用80端口号,但是该方法返回-1 System.out.println("文件路径:"+url.getPath()); System.out.println("文件名:"+url.getFile()); System.out.println("相对路径:"+url.getRef()); System.out.println("查询字符串:"+url.getQuery()); =======================================获取网页数据实例 package com.kai; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; /** * 使用URL读取网页内容 * */ public class ReadHtmlByURL { private static String getHtmlByURl(String urlTemp){ try { URL url = new URL(urlTemp); //通过url.openStream()获取URL对象的资源字节输入流 InputStream is = url.openStream(); //将字节输入流转换为字符输入流 InputStreamReader isr = new InputStreamReader(is,"utf-8"); //为字符输入流添加缓冲 StringBuffer sb = new StringBuffer(); BufferedReader bfRead = new BufferedReader(isr); //读取数据 String data = bfRead.readLine(); while(data!=null){ sb.append(data); //输出数据,继续读取下一行数据 System.out.println(data); data = bfRead.readLine(); } //关闭资源 bfRead.close(); isr.close(); is.close(); return sb.toString(); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } public static void main(String[] args) { String html=getHtmlByURl("http://www.imooc.com/search/course?words=java"); System.out.println(html); } }转载地址:https://blog.csdn.net/kai402458953/article/details/88340436 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2024年04月11日 13时23分35秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Python log 日志的使用
2019-05-08
关于sprintf的一些东西(在stdio.h里)
2019-05-08
八皇后的思考(DFS)
2019-05-08
zoj 1004 dfs+栈
2019-05-08
"《算法导论》之‘线性表’":基于静态分配的数组的顺序表
2019-05-08
ModelSim 仿真教程
2019-05-08
Numpy:dot()函数
2019-05-08
机器学习:SVM(基础理解)
2019-05-08
Python:itertools库的使用
2019-05-08
Python:内置函数zip()
2019-05-08
高数:其它
2021-07-11
机器学习:SVM(scikit-learn 中的 SVM:LinearSVC)
2021-07-11
机器学习:SVM(非线性数据分类:SVM中使用多项式特征和核函数SVC)
2019-05-08
机器学习:SVM(核函数、高斯核函数RBF)
2019-05-08
机器学习:SVM(scikit-learn 中的 RBF、RBF 中的超参数 γ)
2019-05-08
机器学习:SVM(SVM 思想解决回归问题)
2019-05-08
Hbase学习笔记(一)
2019-05-08
Hbase学习笔记(二)
2019-05-08
Hbase学习笔记(三)
2019-05-08