这里仅简单介绍一种我曾用到的网页数据的抓取和处理方案。
通过HttpClient可以很方便的抓取静态网页数据,过程很简单,步骤如下:
//构造client HttpClient client = new HttpClient(); //构建GetMethod对象 GetMethod temp_get = new GetMethod(URL); client.executeMethod(temp_get); //获取返回的网页信息 String webResult=temp_get.getResponseBodyAsString();
抓取后的网页分析也有很多开源的工具包,这里推荐使用 jsoup,因为其语法和jquery类似,有网页开发经验的人使用起来很方便
Document doc = Jsoup.parse(htmlString); Elements dls = doc.select("#queryform .listinfo").select("dl"); Elements xhdds=dls.get(0).select("dd");//序号 Elements grbmdds=dls.get(1).select("dd");//个人编码
WebClient webClient = new WebClient() HtmlPage page = webClient.getPage("http://some_url"); final HtmlDivision div = page.getHtmlElementById("some_div_id");