网络爬虫(又被称为网页蜘蛛,网络机器人),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁,自动索引,模拟程序或者蠕虫。我们常用网络爬虫程序,在网络上抓取自己感兴趣的信息,那么网络爬虫程序究竟是怎么写的呢?接下来将一步步展开介绍。
今天,首先介绍下怎么抓取网页上的数据。在任何一个网页上,我们可以右键查看网页源代码,看到网页上的各元素。实际上,我们每次向服务器发起请求的时候,服务器正是返回给我们这些数据,而浏览器的功能则是解析这些数据,展现给我们看。爬虫程序正是把这些个数据Down下来,然后通过自己指定的规则,筛选出有用的信息。那么,我们要如何获取这些数据呢?
首先,介绍下Http协议的两种请求方法。Http协议共有Get和Post两种请求方法,最主要的区别也是最明显的区别就是:Get请求是把参数带在URL中;而Post请求则是把参数放在Header后面的实体中。所以,我们可以分别模拟Get和Post两种方法来获取网页内容。
代码如下:
package com.smallstone.spider;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import org.apache.commons.httpclient.Htt