java网页抓取
网页抓取就是,我们想要从别人的网站上得到我们想要的,也算是窃取了,有的网站就对这个网页抓取就做了限制,比如百度
直接进入正题
1 //要抓取的网页地址 2 String urlStr = "http://**************/center"; 3 URL url = new URL(urlStr); 4 URLConnection connection = url.openConnection(); 5 //得到网页的编码方式 6 System.out.println(connection.getContentType()); 7 8 //读取网页的的内容 9 BufferedReader read = new BufferedReader(new InputStreamReader(url.openStream(), "utf-8")); 10 File file = new File("d:/test.html"); 11 BufferedWriter write = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file))); 12 if(read != null){ 13 String s = null; 14 while((s = read.readLine()) != null){ 15 System.out.println(s); 16 write.write(s); 17 write.flush(); 18 } 19 read.close(); 20 write.close();
很简单,大家不用死记硬背,我的这个思想是,
1.通过一个url打开一个连接
2.通过这个连接来得到网页的编码方式
3.通过这个连接打开一个写入流,我这里把这个网页写到我的本地了,大家在练习的时候随意。
4.进行标准的写入
5.最重要一步,关闭连接
就这么简单的一个小网页抓取。
防止你的网页被别人抓取试用robots.txt,具体怎么还没研究过,http://www.robotstxt.org/ 这个是官网
测试你的网站是否生效了,直接http://网站名/robots.txt如果显示,则证明成功。
如果有使用请标明来源:http://www.cnblogs.com/duwenlei/