请完成以下方法:
public static String getPageContent(String url){
String pageContent =null;
return pageContent;
}
最好能实现:
1、自动识别url页面的编码
2、如果服务器拒绝,设置代理连接
3、返回的是url页面源代码
------解决方案--------------------
自动识别?你要读取源代码的头信息,里面可以获取到页面编码。
------解决方案--------------------
用htmlparser.jar试试呢
------解决方案--------------------
- Java code
public static String getPageContent(String url){ String pageContent = ""; try { File file = new File(url); BufferedReader in = new BufferedReader(new FileReader(file)); String str = in.readLine(); while (str != null) { pageContent += str + "\n"; str = in.readLine(); if (null == str) { break; } } } catch (Exception e) { e.printStackTrace(); } return pageContent; }
------解决方案--------------------
以前写过一个类似的 帮你修改了下
- Java code
import java.io.InputStream;import java.net.URL;import java.net.URLConnection;public class URLconnectionTest { public static void main(String[] args) throws Exception { String content = getPageContent("http://www.baidu.com"); System.out.println(content); } public static String getPageContent(String url) throws Exception { String pageContent = null; URL url2 = new URL(url); URLConnection urlcon = url2.openConnection(); System.out.println(urlcon.getHeaderField("Content-Type")); InputStream is = urlcon.getInputStream(); StringBuffer sbf = new StringBuffer(); byte[] buffer = new byte[2048]; int length = 0; while(-1 != (length = is.read(buffer, 0, buffer.length))) { sbf.append(new String(buffer,0,length)); } pageContent = sbf.toString(); return pageContent; }}
------解决方案--------------------
我觉得LZ你应该把这3个问题分别用google查一下~!
------解决方案--------------------
------解决方案--------------------
读取地址内容推荐用jsoup.jar!
------解决方案--------------------
------解决方案--------------------
可以实现,用url打开连接,下载页面,然后分析页面,html里面都有编码方式的。
如果下载失败,重新创建连接设置代理,代码懒得写了
--signature-------------------
http://www.mowker.com/qkdq.htm