Java访问指定URL并获取网页源代码1.编写useSourceViewer 类的基本框架java获取网页源代码,该类仅包括无返回值的main ()方法 , 该方法从参数中获取URL , 通过输入缓冲和输出缓冲将该URL 原码输出 。
2.编写useSourceViewer 类 , 代码如下java获取网页源代码:
import java.net.*;
import java.io.*;
public class useSourceViewer
{
public static void main (String[] args)
{
if (args.length0)
{
try
{
//读入URL
URL u = new URL(args[0]);
InputStream in = u.openStream( );
// 为增加性能存储输入流
in = new BufferedInputStream(in);
// 将输入流连接到阅读器
Reader r = new InputStreamReader(in);
int c;
while ((c = r.read( )) != -1)
{
System.out.print((char) c);
}
Object o = u.getContent( );
System.out.println("I got a " + o.getClass().getName( ));
}
catch (MalformedURLException e)
{
System.err.println(args[0] + " is not a parseable URL");
}
catch (IOException e)
{
System.err.println(e);
}
} // end if
} // end main
} // end SourceViewer}
java中如何根据一个网址获得该网页的源代码?package test;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class HttpTest {
private String u;
private String encoding;
public static void main(String[] args) throws Exception {
HttpTest client = new HttpTest("", "UTF-8");
client.run();
}
public HttpTest(String u, String encoding) {
this.u = u;
this.encoding = encoding;
}
public void run() throws Exception {
URL url = new URL(u);// 根据链接(字符串格式)java获取网页源代码,生成一个URL对象
HttpURLConnection urlConnection = (HttpURLConnection) url
.openConnection();// 打开URL
BufferedReader reader = new BufferedReader(new InputStreamReader(
urlConnection.getInputStream(), encoding));// 得到输入流,即获得了网页java获取网页源代码的内容
String line; // 读取输入流java获取网页源代码的数据,并显示
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
}
}
根据具体问题类型,进行步骤拆解/原因原理分析/内容拓展等 。
具体步骤如下java获取网页源代码:/导致这种情况java获取网页源代码的原因主要是……
求用java得到URL相应源文件的方法Java可以通过链接的mime类型来判断源文件的类型java获取网页源代码,从而得到源文件内容java获取网页源代码,示例如下:
URLConnection提供java获取网页源代码了两种方法可以猜测(根据实测结果,这个猜测是相当的准)数据的MIME类型 。
第一个是:
public static String guessContentTypeFromName(String name)
这个方法根据URL文件部分的后缀名来判断类型,跟之前java获取网页源代码我的方法一样 。这个不能解决上面那个问题 。
第二个是:public static String guessContentTypeFromStream(InputStream in)
这个方法是根据流的前面几个字节来判断类型 , 这个就不需要文件后缀名了 , 完全可以解决上面那个问题 。
测试代码如下:BufferedInputStream bis = null;HttpURLConnection urlconnection = null;URL url = null;url = new URL(strUrl);urlconnection = (HttpURLConnection) url.openConnection();urlconnection.connect();bis = new BufferedInputStream(urlconnection.getInputStream());System.out.println("file type:"+HttpURLConnection.guessContentTypeFromStream(bis));
为什么用JAVA获取不了这个网页的源代码好诡异.....................试了很多次才弄好!!!!!!!!!!!!!
推荐阅读
- 直播时yy伴侣,yy手游直播伴侣
- 苹果cms怎么用切片工具,苹果cms模板制作教程
- python自动化登录代码,python登录程序代码
- 如何做好营销客户研究活动,如何做好营销客户研究活动方案
- go语言哪个是相加的 go语言 gin
- .net小程序源代码下载,c#小程序
- python选择排序算法代码,python 选择法排序
- 电脑拍照宵夜怎么拍照,如何利用电脑拍照
- vb.netu转中文 vb转译字符