public class URL01 {
/**
* @param args
* @throws MalformedURLException
*/
public static void main(String[] args) throws MalformedURLException {
//绝对路径构建
URL url = new URL("http://www.baidu.com:80/index.html#aa?uname=jesas");
System.out.println("协议:"+url.getProtocol());
System.out.println("域名:"+url.getHost());
System.out.println("端口:"+url.getPort());
System.out.println("资源:"+url.getFile());
System.out.println("相对路径:"+url.getPath());
System.out.println("锚点:"+url.getRef()); //锚点
System.out.println("参数:"+url.getQuery());//?参数 :存在锚点 返回null ,不存在,返回正确
url = new URL("http://www.baidu.com:80/a/");
url = new URL(url,"b.txt"); //相对路径
System.out.println(url.toString());
}
}
/**
* 获取资源:源代码
* URL网络爬虫原理
* @author Administrator
*
*/
public class URL02 {
public static void main(String[] args) throws IOException {
URL url = new URL("http://www.baidu.com"); //主页 默认资源
//获取资源 网络流
InputStream is =url.openStream();
byte[] flush = new byte[1024];
int len =0;
while(-1!=(len=is.read(flush))){
System.out.println(new String(flush,0,len));
}
is.close();
BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream(),"utf-8"));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("baidu2.html"),"utf-8"));
String msg =null;
while((msg=br.readLine())!=null){
//System.out.println(msg);
bw.append(msg);
bw.newLine();
}
bw.flush();
bw.close();
br.close();
}
}