java htmlunit 抓取网页数据
WebClient webClient=new WebClient(BrowserVersion.CHROME);
webClient.setJavaScriptTimeout(5000);
webClient.getOptions().setUseInsecureSSL(true); webClient.getOptions().setJavaScriptEnabled(true);
webClient.getOptions().setCssEnabled(false);
webClient.getOptions().setThrowExceptionOnScriptError(false);
webClient.getOptions().setTimeout(100000);
webClient.getOptions().setDoNotTrackEnabled(false); HtmlPage page=webClient.getPage(this.path);
webClient.waitForBackgroundJavaScript(20000); Thread.sleep(5000); HtmlDivision div=(HtmlDivision)page.getElementById("forecast");
String xml=div.asXml();
if(xml.indexOf("forecast-data-loading")>=0)
{
System.out.println("htmlUnit解析页面失败");
}
else
{
System.out.println("htmlUnit解析页面成功");
int[] aqis=new int[8]; int i=0;
List<HtmlTable> tables=(List<HtmlTable>)div.getByXPath("./div[2]/center[1]/table");
if(tables.size()==8)
{
for(HtmlTable table : tables)
{
List<HtmlTableRow> trs=(List<HtmlTableRow>)table.getByXPath("./tbody/tr[4]");
HtmlTableRow tr=trs.get(0); int aqi=0;
List<HtmlTableCell> cells = (List<HtmlTableCell>)tr.getByXPath("./td");
for(HtmlTableCell cell : cells)
{
String s=cell.asText();
String [] values=s.split("\r\n");
aqi=aqi+(Integer.parseInt(values[0])+Integer.parseInt(values[1]))/2 ;
}
aqi=aqi/cells.size();
aqis[i]=aqi;
i=i+1;
}
}
java htmlunit 抓取网页数据的更多相关文章
- java抓取网页数据,登录之后抓取数据。
最近做了一个从网络上抓取数据的一个小程序.主要关于信贷方面,收集的一些黑名单网站,从该网站上抓取到自己系统中. 也找了一些资料,觉得没有一个很好的,全面的例子.因此在这里做个笔记提醒自己. 首先需要一 ...
- 使用JAVA抓取网页数据
一.使用 HttpClient 抓取网页数据 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ...
- iOS—网络实用技术OC篇&网络爬虫-使用java语言抓取网络数据
网络爬虫-使用java语言抓取网络数据 前提:熟悉java语法(能看懂就行) 准备阶段:从网页中获取html代码 实战阶段:将对应的html代码使用java语言解析出来,最后保存到plist文件 上一 ...
- iOS开发——网络实用技术OC篇&网络爬虫-使用java语言抓取网络数据
网络爬虫-使用java语言抓取网络数据 前提:熟悉java语法(能看懂就行) 准备阶段:从网页中获取html代码 实战阶段:将对应的html代码使用java语言解析出来,最后保存到plist文件 上一 ...
- 01 UIPath抓取网页数据并导出Excel(非Table表单)
上次转载了一篇<UIPath抓取网页数据并导出Excel>的文章,因为那个导出的是table标签中的数据,所以相对比较简单.现实的网页中,有许多不是通过table标签展示的,那又该如何处理 ...
- Asp.net 使用正则和网络编程抓取网页数据(有用)
Asp.net 使用正则和网络编程抓取网页数据(有用) Asp.net 使用正则和网络编程抓取网页数据(有用) /// <summary> /// 抓取网页对应内容 /// </su ...
- 使用HtmlAgilityPack批量抓取网页数据
原文:使用HtmlAgilityPack批量抓取网页数据 相关软件点击下载登录的处理.因为有些网页数据需要登陆后才能提取.这里要使用ieHTTPHeaders来提取登录时的提交信息.抓取网页 Htm ...
- web scraper 抓取网页数据的几个常见问题
如果你想抓取数据,又懒得写代码了,可以试试 web scraper 抓取数据. 相关文章: 最简单的数据抓取教程,人人都用得上 web scraper 进阶教程,人人都用得上 如果你在使用 web s ...
- c#抓取网页数据
写了一个简单的抓取网页数据的小例子,代码如下: //根据Url地址得到网页的html源码 private string GetWebContent(string Url) { string strRe ...
随机推荐
- USACO 2014 FEB 银组
1.自动打字{Silver题1} [问题描述] 贝西新买了手机,打字不方便,请设计一款应用,帮助她快速发消息. 字典里有W(W<=30000)个小写字母构成的单词,所有单词的字符总数量不超过1, ...
- 如何使用QQ号进行快捷登录
注意:第三步回调地址域名必须严格按照规范填写否则无法使用.QQ回调地址域名为您的网站地址无论您是否为DISCUZ论坛,请全部使用网站申请.discuz论坛申请的KEY无效注册QQ登录应用将会获得该应用 ...
- Java基础语法
java基础学习总结——基础语法1 一.标识符
- 看懂SqlServer查询计划【转】
原文链接:http://www.cnblogs.com/fish-li/archive/2011/06/06/2073626.html 开始 SQL Server 查找记录的方法 SQL Server ...
- iOS版本更新的App提交审核发布流程
http://www.2cto.com/kf/201502/378698.html 版本更新的App和新App的发布提交流程略有不同,新的App需要在开发者账号里准备发布证书,添加App的id,关联描 ...
- andriod逆向实验截图
- Qt之创建桌面和开始菜单快捷方式
将安装好的酷狗拷贝到C:\data目录中 1.创建桌面快捷方式 QFile::link("C:/data/KuGou.exe", QStandardPaths::writableL ...
- WordPress基础:订阅源rss的使用
设置->阅读,可设置rss显示效果 RSS源为:http://wordpress目录/feed 把这个地址放入你的rss阅读器进行订阅即可,最简单的就是使用QQ邮箱里面的阅读空间进行订阅.
- KnocKout 绑定数据
Controller 里面的方法: public ActionResult Index() { return View(); } [HttpPost] public JsonResult Reader ...
- 在Centos6下面安装Python3.4
yum源里头好像没有python3.4 在Python的官网下载Python3.4的源代码 然后: 安装依赖包: yum groupinstall "Development tools&qu ...