本人最近在研究爬虫。作为一个新手。研究了些爬虫框架,发现所有开源的爬虫框架很多,功能也很齐全,但唯独遗憾的是,目前还没有发现那个爬虫对js完美的解释并执行。看了浅谈网络爬虫爬js动态加载网页(二)之后很有感慨,首先对博主的钻研精神季度敬佩。虽然该文中第二和第三种方案不怎么靠谱,但能想到这些方案,说明博主的思维发散性很强,不会局限于单方向钻牛角尖式的思考。不过很遗憾,因为我就是这样的人。我始终觉得博主对于HtmlUnit的了解不够深入(也可能是我的误解)。于是就开始钻牛角尖了。看了HtmlUnit的简介之后,我有一种预感,认为HtmlUnit没理由不能支持Js的自动解释于执行,事实证明了我的想法。 废话多说无益,
这里拿地址【http://cq.qq.com/baoliao/detail.htm?294064】来测试,通过查看该页面源码,可以发现,该页面文章标题,内容,浏览量都是采用占位符的形式,在页面加载时,通过js替换之,下面代码获取该文章浏览量字段。
public void testCrawler() throws Exception { /**HtmlUnit请求web页面*/ WebClient wc = new WebClient(); wc.getOptions().setJavaScriptEnabled(true); //启用JS解释器,默认为true wc.getOptions().setCssEnabled(false); //禁用css支持 wc.getOptions().setThrowExceptionOnScriptError(false); //js运行错误时,是否抛出异常 wc.getOptions().setTimeout(10000); //设置连接超时时间 ,这里是10S。如果为0,则无限期等待 HtmlPage page = wc.getPage("http://cq.qq.com/baoliao/detail.htm?294064"); String pageXml = page.asXml(); //以xml的形式获取响应文本 /**jsoup解析文档*/ Document doc = Jsoup.parse(pageXml, "http://cq.qq.com"); Element pv = doc.select("#feed_content span").get(1); System.out.println(pv.text()); Assert.assertTrue(pv.text().contains("浏览")); System.out.println("Thank God!"); }
相关推荐
htmlunit2.8 + jsoup1.7各种网站上的数据抓取。
高效的java爬虫,内附代码 sql数据表 ,main方法启动。...避免了jsoup无法抓取js代码生成的数据内容的弊端。避免了client无法一次性获取大量信息的弊端。有能获取静态页面形成之前的对方数据内容的高手 欢迎借阅指导
htmlunit 是一款开源的java 页面分析工具,读取页面后,可以有效的使用htmlunit分析页面上的内容。项目可以模拟浏览器运行,被誉为java浏览器的开源实现。这个没有界面的浏览器,运行速度也是非常迅速的。 jsoup 是...
个人学习中,总结的小案例.
htmlunit+jsoup+java+httpclient爬取京东,苏宁,亚马逊,唯品会,淘宝,天猫,国美价格降序后第一个商品价格数据
htmlunit爬虫,基于Javahtmlunit爬虫,模拟浏览器HTTP请求实现对网页信息的抓取,本人经常用的框架,可以爬网上一些数据,进行分析。
导致htmlunit无法直接感知到需要等待Kissy发起的请求完成,通过等待页面加载解析内容判断处理实现此类页面数据抓取。 基于页面滚动的AJAX请求页面抓取: 诸如淘宝/天猫的商品详情页面会基于页面滚动发起...
最近在用Jsoup抓取某网站数据,可有些页面是ajax请求动态生成的,去群里问了一下,大神说模拟ajax请求即可。去网上搜索了一下,发现了这篇文章,拿过来先用着试试... 关于解析Ajax网站的框架也有不少,我选择了HtmlUnit
htmlunit爬虫技术jar包
针对 httpclient4.* 绕验证码获取公司信息 包括 jsoup网页信息的爬虫及htmlUnit对动态网站信息的抓取
htmlunit网络爬虫jar包
HtmlUnit 爬虫Demo,有最全面的方法
jsoup、htmlunit 、seleniumWebdriver的jar包
爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的...
GC基于httpclient、htmlunit、jsoup、elasticsearch。 GC的特点: 1、具有DSL特性的模板。 2、分布式、可扩展。 3、辛亏有htmlunit,它能较好地支持javascript。 5、合理的插件设计,方便功能扩充。...
获取执行js代码后的html文档。
一共有21个jar包。亲测可用不冲突! 上述的jar包支持爬取动静态界面。
Java自动化测试框架
JWPT_API 一键评教API_清元优软URP教务系统 Jersey实现的RESTful风格API HtmlUnit+Jsoup模拟登录/评教 Log 2018-06-23 Version 1.0