没有合适的资源?快使用搜索试试~ 我知道了~
首页详解Java两种方式简单实现:爬取网页并且保存
详解Java两种方式简单实现:爬取网页并且保存
374 浏览量
更新于2023-05-26
评论
收藏 58KB PDF 举报
本篇文章主要介绍了Java两种方式简单实现:爬取网页并且保存 ,主要用UrlConnection、HttpClient爬取实现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
资源详情
资源评论
资源推荐

详解详解Java两种方式简单实现:爬取网页并且保存两种方式简单实现:爬取网页并且保存
本篇文章主要介绍了Java两种方式简单实现:爬取网页并且保存 ,主要用UrlConnection、HttpClient爬取实
现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
对于网络,我一直处于好奇的态度。以前一直想着写个爬虫,但是一拖再拖,懒得实现,感觉这是一个很麻烦的事情,出现个
小错误,就要调试很多时间,太浪费时间。
后来一想,既然早早给自己下了保证,就先实现它吧,从简单开始,慢慢增加功能,有时间就实现一个,并且随时优化代码。
下面是我简单实现爬取指定网页,并且保存的简单实现,其实有几种方式可以实现,这里慢慢添加该功能的几种实现方式。
UrlConnection爬取实现爬取实现
package html;
import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class Spider {
public static void main(String[] args) {
String filepath = "d:/124.html";
String url_str = "http://www.hao123.com/";
URL url = null;
try {
url = new URL(url_str);
} catch (MalformedURLException e) {
e.printStackTrace();
}
String charset = "utf-8";
int sec_cont = 1000;
try {
URLConnection url_con = url.openConnection();
url_con.setDoOutput(true);
url_con.setReadTimeout(10 * sec_cont);
url_con.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)");
InputStream htm_in = url_con.getInputStream();
String htm_str = InputStream2String(htm_in,charset);
saveHtml(filepath,htm_str);
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* Method: saveHtml
* Description: save String to file
* @param filepath
* file path which need to be saved
* @param str
* string saved
*/
public static void saveHtml(String filepath, String str){
try {
/*@SuppressWarnings("resource")
FileWriter fw = new FileWriter(filepath);
fw.write(str);
fw.flush();*/
OutputStreamWriter outs = new OutputStreamWriter(new FileOutputStream(filepath, true), "utf-8");
outs.write(str);
System.out.print(str);
outs.close();
} catch (IOException e) {
System.out.println("Error at save html...");











安全验证
文档复制为VIP权益,开通VIP直接复制

评论0