我想获取指定URL的页面源码,代码如下:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
public class Test {
public static void main(String[] args) {
URL url;
InputStream is = null;
BufferedReader br;
String line = null;
String urlStr = "https://weibo.com/tv/v/G0Eg72F68";
try {
url = new URL(urlStr);
is = url.openStream(); // throws an IOException
br = new BufferedReader(new InputStreamReader(is));
while ((line = br.readLine()) != null) {
//if (line.contains("video-sources")) {
System.out.println(line);
// break;
//}
}
System.out.println("this is the end");
} catch (MalformedURLException mue) {
mue.printStackTrace();
} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
try {
if (is != null) is.close();
} catch (IOException ioe) {
// nothing to see here
}
}
}
}
但是返回的字符串跟页面实际的源码不一样,差距很大,请问这是怎么回事?有什么解决办法?
非常感谢!
P.S. 不是乱码的问题,是返回的源码内容跟本来页面的内容差距很大。原页面的源码中有很多dom元素,而返回的源码基本就只有一些js代码。感觉返回的并不是我想要的页面的源码。
守候你守候我
相关分类