怎么用java写网络爬虫将网页中的指定数据下载到本地excel文档中

刚开始学网络爬虫,只会把相关的数据打印出来,但是不知道怎么才能下载到本地的文档中,并且如果那个数据是动态的又该怎么办呢?求各位大神详细的java代码... 刚开始学网络爬虫,只会把相关的数据打印出来,但是不知道怎么才能下载到本地的文档中,并且如果那个数据是动态的又该怎么办呢?求各位大神详细的java代码 展开
 我来答
灵粉哈x
推荐于2016-08-05 · TA获得超过1487个赞
知道大有可为答主
回答量:2001
采纳率:25%
帮助的人:1598万
展开全部
mport java.io.InputStream;
        import java.net.*;
        public class HelloHttp {
        }

        接著就可以仿照下列范例建立HTTP连线:

        URL url = new URL("http://tw.yahoo.com");
        HttpURLConnection http = (HttpURLConnection) url.openConnection();
        http.setRequestMethod("POST");
        InputStream input = http.getInputStream();
        http.disconnect();

    第1行建立一个URL物件,带入参数为想要建立HTTP连线的目的地,例如网站的网址。
    第2行建立一个HttpURLConnection物件,并利用URL的openConnection()来建立连线。
    第3行利用setRequestMethod()来设定连线的方式,一般分为POST及GET两种。
    第4行将连线取得的回应载入到一个InputStream中,然後就可以将InputStream的内容取出应用,以这个例子而言我们取得的会是网页的原始码。
    第5行用disconnect()将连线关闭。 

       将InputStream内容取出应用的范例如下:

        byte[] data = new byte[1024];
        int idx = input.read(data);
        String str = new String(data, 0, idx);
        System.out.println(str);
        input.close(); 

        针对 str 作 regular expression 处理 , 依照需求取得内容。
藍色雷客
2015-04-12 · TA获得超过122个赞
知道小有建树答主
回答量:204
采纳率:0%
帮助的人:163万
展开全部
use Regular Expression
追问
不是很明白,能说的详细一点吗
追答
使用HttpURLConnection
会用到java.net底下的物件以及java.io.InputStream,
因此需要在程式一开始载入,如下:

import java.io.InputStream;
import java.net.*;
public class HelloHttp {
}

接著就可以仿照下列范例建立HTTP连线:

URL url = new URL("http://tw.yahoo.com");
HttpURLConnection http = (HttpURLConnection) url.openConnection();
http.setRequestMethod("POST");
InputStream input = http.getInputStream();
http.disconnect();

第1行建立一个URL物件,带入参数为想要建立HTTP连线的目的地,例如网站的网址。
第2行建立一个HttpURLConnection物件,并利用URL的openConnection()来建立连线。
第3行利用setRequestMethod()来设定连线的方式,一般分为POST及GET两种。
第4行将连线取得的回应载入到一个InputStream中,然後就可以将InputStream的内容取出应用,以这个例子而言我们取得的会是网页的原始码。
第5行用disconnect()将连线关闭。

将InputStream内容取出应用的范例如下:

byte[] data = new byte[1024];
int idx = input.read(data);
String str = new String(data, 0, idx);
System.out.println(str);
input.close();

针对 str 作 regular expression 处理 , 依照需求取得内容。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式