黑马程序员_网络爬虫

来源:互联网 发布:realtime pcr 数据分析 编辑:程序博客网 时间:2024/06/10 04:41

  ——- android培训、java培训、期待与您交流! ———

发现一个好玩的东西,利用HtmlUnit开源项目写简单爬虫

HtmlUnit其实就是一个后台运行的JAVA浏览器,便捷,高效。
HtmlUnit请自行GOOGLE下载
参考代码

public class test{    WebClient webClient=new WebClient();    webClient.getOptions().setCssEnabled(false);//关闭css    webClient.getOptions().setJavaScriptEnabled(false);//关闭JavaScript 如需运行脚本可设置为true    final HtmlPage page=webClient.getPage("http://www.163.com");//设置需抓取的网站地址    System.out.println(page.asText());//输入打印    webClient.closeAllWindows();}

模拟特定浏览器,也可以指定浏览器的相应版本(HtmlUnit最新版2.13现在可以模拟的浏览器有Chrome/FireFox/IE)

//模拟chorme浏览器,其他浏览器请修改BrowserVersion.后面WebClient  webClient=new WebClient(BrowserVersion.CHROME);

查找特定元素,通过get或者XPath可以从HtmlPage中获得特定的Html元素,如下例子

方法一,通过get方法获取HtmlPage page=webClient.getPage("http://www.163.com");HtmlDivision div=(HtmlDivision)page.getElementById("hed");方法二,通过XPath获取,XPath通常用于无法通过Id搜索,或者需要更为复杂的搜索时,XPath的相关教程自行GOOGLE//同样可以打印出hed的内容,//div中//表示搜索整个文档中的div,并将这些div//放入list中,然后获取第一个divfinal HtmlDivision div = (HtmlDivision) page.getByXPath("//div").get(0);System.out.println(div.asXml());
0 0
原创粉丝点击