public static void main(String[] args) throws Exception { String url="www.xxx.com"; WebClient webClient = new WebClient(BrowserVersion.FIREFOX_17);//设置webClient的相关参数 webClient.setJavaScriptEnabled(true); webClient.setCssEnabled(false); webClient.setAjaxController(new NicelyResynchronizingAjaxController()); webClient.setTimeout(50000); webClient.setThrowExceptionOnScriptError(false); //模拟浏览器打开一个目标网址 HtmlPage rootPage= webClient.getPage(url); System.out.println("为了获取js执行的数据 线程开始沉睡等待"); Thread.sleep(30000);//注意 这步非常重要 因为页面的初始化js加载也是需要时间的 具体时间可以自己调 System.out.println("线程结束沉睡"); String html = rootPage.asXml(); System.out.println(html); //后面是一个扩展 ,你前面的沉睡时间可以设短点 然后判断 抓过来的数据有没有你需要的 如果有 那就解析呗 我用的是Jsoup这个解析的 所需要的jar //在我的资源里面有 地址http://download.csdn.net/detail/caiselangren/5743399 自己下了引人就行
Document doc = Jsoup.parse(html); if(Numbers!=null){ for(int i=0;i<Numbers.size();i++){ Element Number = Numbers.get(i); System.out.println(Number.html()); } } } |
|