import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
public class WeatherTest {
/**Java通过jsoup实现网页天气数据解析
* @param args
* @throws Exception
* @throws UnsupportedEncodingException
* @throws MalformedURLException
*/
public static void main(String[] args) throws MalformedURLException, UnsupportedEncodingException, Exception {
Document doc = getURLContent("http://www.soso.com/tb.q?cid=webq.wea");
String content = doc.html();
int beginLocal = content.indexOf("<xml id=\"WeatherData\" style=\"display:none\"> ");
int endLocal = content.indexOf("</xml>");
content = content.substring(beginLocal, endLocal);
String cityStr = getXMLVarByName("<city>","</city>",content);
System.out.println("城市:"+cityStr);
String dateStr = getXMLVarByName("<date>","</date>",content);
System.out.println("日期:"+dateStr);
String todayTemperature = getXMLVarByName("<temperature>","</temperature>",content);
System.out.println("今日气温:"+todayTemperature);
String todayWeather = getXMLVarByName("<weather>","</weather>",content);
System.out.println("今日天气:"+todayWeather);
String todayWind = getXMLVarByName("<wind>","</wind>",content);
System.out.println("今日风向:"+todayWind);
}
/**
* 获取xml格式的信息
* @param name
* @param content
* @return
*/
private static String getXMLVarByName(String startStr, String endStr,String content){
String xmlData = content;
int begin = xmlData.indexOf(startStr);
int end = xmlData.indexOf(endStr);
String result=xmlData.substring(begin+startStr.length(),end);
result = result.trim();
return result;
}
/**
* 获取网页
* @param docUrl
* @return
* @throws MalformedURLException
* @throws IOException
* @throws UnsupportedEncodingException
*/
private static Document getURLContent(String docUrl) throws MalformedURLException, IOException, UnsupportedEncodingException {
Document doc = Jsoup.connect(docUrl)
.data("query", "Java")
.userAgent("Mozilla")
.cookie("auth", "token")
.timeout(3000)
.post();
return doc;
}
}
需要jsoup的jar包,在附件上。
分享到:
相关推荐
使用java+jsoup进行网页数据的抓取,提取自己想要的数据
主要介绍了Java爬虫Jsoup+httpclient获取动态生成的数据的相关资料,需要的朋友可以参考下
Jsoup库文件;Jsoup解析Java包
通过使用jsoup库,获取网页的内容,解析修改网页,并且能够显示出修改的结果。
使用jsoup抓取网页列表信息,并入库,使用了PreparedStatement防止sql注入小demo。
Java基于jsoup实现的爬虫技术,通过Java EE项目管理,前端通过Echarts展示
使用Jsoup解析html网页,包含jsoup.jar \ api.chm \ 代码
基于jsoup实现的java爬虫,爬取豆瓣电影数据基于jsoup实现的java爬虫,爬取豆瓣电影数据
jsoup在java代码中高效解析html字符串为dom结构,并可实现对dom结构的灵活操作,特别适合移动端返回字段为html形式的解析过滤处理
jsoup Java HTML解析器 jsoup Java HTML解析器 jsoup Java HTML解析器 jsoup Java HTML解析器 jsoup Java HTML解析器
jsoup + jdid网页动态解析,类似火狐firebug的html查看,适用于windows,包括tray.dll,jdic.dll
jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。
用java+jsoup解析api本地帮助文档的一些实例,实测java1.6 html格式的API可用(对于一个学习java已有N年,但却一直停留在“曾经学过”的阶段人来说,java确实有其难处,类库相对较多。我最初设计目的是想要解析帮助...
jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。 1. 从一个URL,文件或字符串中解析HTML; 2. 使用...
用jsoup实现爬取一个完整的网站,包含网站里的所有链接内容,会另存为html到本地,js和css文件也会保存到本地,可以直接在本地打开查看一个完整的网站。 eclipse项目,可以直接导入修改。 提供一个链接和保存爬取后...
资源名字:基于java+Jsoup+HttpClient的网络爬虫技术的网络新闻分析系统设计与实现(源码+文档)_MySQL_网络爬虫_数据挖掘.zip 资源内容:项目全套源码+完整文档 源码说明: 全部项目源码都是经过测试校正后百分百...
利用httpClient+jsoup技术进行网页数据的获取,以网易贵金属为例~
这个只是一个java源文件,用于学习Jsoup
jsoup.jar用于java网页解析的工具类,版本最新,小巧并且强大
主要介绍了java通过Jsoup爬取网页过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下