根据网址读取网页HTML内容生成静态网页
import java.io.BufferedReader; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; public class TestHtml { /** * 根据网址读取网页HTML内容 * @param pageUrl 网页地址 */ public String readerPageByUrl(String pageUrl) { URL url; String pageString=""; try { url = new URL(pageUrl); HttpURLConnection connection = (HttpURLConnection) url .openConnection(); InputStream is = connection.getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(is)); StringBuffer sb=new StringBuffer(); String line = null; while ((line = br.readLine()) != null) { sb.append(line+"\n"); } pageString=sb.toString(); } catch (Exception e) { e.printStackTrace(); }finally{ } return pageString; } /** * 写入操作 * @param filePath 静态页面路径 * @param fileStr网页内容 * @throws Exception */ public void writeStringToFile(String filePath, String fileStr) throws Exception { File file=new File(filePath); FileOutputStream fileout = new FileOutputStream(file); fileout.write(fileStr.getBytes()); fileout.close(); } /** * 生成静态页面 * @param pageUrl网址 * @param filePath 静态页面路径 * @throws Exception */ public void createStaticPage(String pageUrl,String filePath) throws Exception{ //获取网页内容 String pageStr=readerPageByUrl(pageUrl); try { writeStringToFile(filePath, pageStr); } catch (Exception e) { e.printStackTrace(); } } //测试 public static void main(String[] args) { TestHtml rb=new TestHtml(); String pageUrl="http://www.163.com/"; String filePath="D://static.htm"; try { rb.createStaticPage(pageUrl, filePath); } catch (Exception e) { e.printStackTrace(); } } }
页:
[1]