2009年3月15日星期日

使用JAVA抓取网页内容

今天碰见一个哥们问,怎么使用JAVA抓取网页内容,查了查资料,写了个demo。基本想法是,通过URL打开HTTPconnection,然后可以拿到一个输入流,然后把输入流读入到一个StringBuffer 。

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class URLUtil {

public static String getHtml(String urlString) {
try {
StringBuffer html = new StringBuffer();
URL url = new URL(urlString);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
InputStreamReader isr = new InputStreamReader(conn.getInputStream());
BufferedReader br = new BufferedReader(isr);
String temp;
while ((temp = br.readLine()) != null) {
html.append(temp).append("\n");
}
br.close();
isr.close();
return html.toString();
} catch (Exception e) {
e.printStackTrace();
return null;
}
}

public static void main(String[] args) {
System.out.println(URLUtil.getHtml("http://www.sina.com.cn"));
}
}

其中的问题是不能处理多媒体信息。

没有评论: