//json页面返回格式{"data":{"blogs":[{"albid":865218,"id":12323,.....
org.json.JSONObject
//返回多个json里面的id值
public static List findimgCrawIdList(String url) {
List imgCrawIdList=new ArrayList();
try {
JSONObject jo = getJsonObj(url,"utf-8");
JSONObject menu = jo.getJSONObject("data");
JSONArray jsonArray = menu.getJSONArray("blogs");
for (int i = 0; i < jsonArray.length(); i++) {
imgCrawIdList.add(jsonArray.getJSONObject(i).get("id"));
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return imgCrawIdList;
}
/**
* 根据网址,返回JSONObject对象
* 注:只适合请求响应为json格式网址
* @param src 来源网址
* @param code 编码方式
* @author chitianxiang $22th March, 2012 - 2:42 p.m
*/
private static JSONObject getJsonObj(String src, String code) {
InputStreamReader reader = null;
BufferedReader in = null;
try {
URL url = new URL(src);
URLConnection connection = url.openConnection();
connection.setConnectTimeout(1000);
reader = new InputStreamReader(connection.getInputStream(), code);
in = new BufferedReader(reader);
String line = null; //每行内容
int lineFlag = 0; //标记: 判断有没有数据
StringBuffer content = new StringBuffer();
while ((line = in.readLine()) != null) {
content.append(line);
lineFlag++;
}
return lineFlag == 0 ? null : new org.json.JSONObject(content.toString());
} catch (SocketTimeoutException e) {
System.out.println("连接超时!!!");
return null;
} catch (JSONException e) {
System.out.println("网站响应不是json格式,无法转化成JSONObject!!!");
return null;
} catch (Exception e) {
System.out.println("连接网址不对或读取流出现异常!!!");
return null;
} finally {
if (in != null) {
try {
in.close();
} catch (IOException e) {
System.out.println("关闭流出现异常!!!");
}
}
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
System.out.println("关闭流出现异常!!!");
}
}
}
}
分享到:
相关推荐
Jsoup和JSON是两种在Web开发中非常重要的技术。Jsoup是一个Java库,主要用于解析HTML文档,提取结构化数据,并可以执行DOM操作。而JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端...
**Jsoup:网页数据抓取与JSON转换** Jsoup是一个非常强大的Java库,它使得解析HTML和抓取网页数据变得简单易行。本教程将深入探讨如何使用Jsoup有效地从网页中提取信息,并最终将其转化为JSON格式,为数据分析或...
2. **数据提取**:JSoup提供了多种方法来提取HTML元素的文本、属性值等信息。例如,`text()`方法返回元素的文本内容,`attr(String attrName)`则获取指定属性的值。 3. **XML数据校验**:虽然JSoup主要针对HTML,但...
jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jarjsoup-...
**Jsoup API 深入解析** Jsoup 是一个用于处理和解析HTML的Java库,它提供了强大的功能,使得在Java程序中操作HTML文档变得简单而直观。在Jsoup 1.10.2版本中,这个API进一步优化了对HTML的处理能力,提供了丰富的...
"jsoup爬取某宝购物车数据返回json串,放入eclipse即可运行" 这个标题揭示了本次项目的核心技术是使用jsoup这个Java库来抓取淘宝网站上的购物车数据,并将获取到的数据转换为JSON格式。JSON(JavaScript Object ...
4. 获取值:`String value = obj.getString("key");` 使用`jsoup-1.8.3.jar`,你可以执行以下操作: 1. 连接并抓取网页:`Document doc = Jsoup.connect("http://example.com").get();` 2. 选择HTML元素:`Elements...
Jsoup 提供 DOM 风格的方法(如 `getElementById()`, `getElementsByTag()`, `select(String cssQuery)` 等)来遍历 Document 对象并抽取所需数据。例如,你可以通过 CSS 选择器选取元素,然后提取它们的属性、文本...
Jsoup在Web抓取、数据分析和网页爬虫项目中广泛应用。本文将深入探讨Jsoup 1.5.2和1.6这两个版本的主要特性、变化以及如何在项目中使用它们。 首先,让我们了解Jsoup的基本功能。Jsoup的核心功能包括: 1. **HTML...
jsoup扒取全国地域数据(不包括港澳台)使用java来扒取
6. 更新和修改:Jsoup允许你直接在DOM上进行修改,如添加新元素、改变属性值,然后将这些更改保存回HTML。 7. 与jQuery相似的API:对于熟悉jQuery的开发者来说,Jsoup的API非常直观,因为它模仿了jQuery的一些方法...
- **属性和文本操作**:可以方便地获取和修改元素的属性值,以及提取和替换元素的文本内容。 - **数据输出**:抓取到的数据可以轻松地转换为XML、JSON等格式,方便进一步处理或存储。 **总结** jsoup以其高效、...
3. **数据提取**:jsoup支持提取文本、属性值、链接、图片等HTML元素的数据,这对于网络爬虫或网页抓取应用非常有用。例如,可以轻松获取页面标题、段落内容、链接地址等信息。 4. **HTML清理**:jsoup具备HTML清理...
【标题解析】 "capture-demo" 这个标题暗示了一个...通过学习和理解这个项目,开发者可以掌握利用Jsoup进行数据抓取以及JSON与Java对象之间转换的技巧,这对于从事Web开发、数据分析、爬虫编程等领域的工作非常有帮助。
**JSoup库与JSoup-Annotations** JSoup是一款强大的Java库,专为处理HTML文档而设计,它提供了方便的API,使得抓取和解析HTML变得简单易行。JSoup能够模拟浏览器的行为,理解和构建DOM树,进而允许开发者通过CSS...
1. `jsoup.jar`:Jsoup的主要库文件,包含了所有的类和方法,导入此文件即可在项目中使用Jsoup。 2. `README.md`或`README.txt`:文件说明,介绍如何使用Jsoup以及可能的注意事项。 3. `LICENSE`:Jsoup的许可协议,...
赠送jar包:jsoup-1.14.3.jar; 赠送原API文档:jsoup-1.14.3-javadoc.jar; 赠送源代码:jsoup-1.14.3-sources.jar; 赠送Maven依赖信息文件:jsoup-1.14.3.pom; 包含翻译后的API文档:jsoup-1.14.3-javadoc-API...
4. **数据提取**:Jsoup提供了丰富的API用于提取HTML元素内的数据,如文本、属性值等。例如,`elem.text()`获取元素的文本内容,`elem.attr("href")`获取链接的href属性。 5. **安全的HTML清理**:Jsoup可以清洗不...
2. **DOM操作**:Jsoup提供了一套类似于DOM的操作API,允许开发者对HTML元素进行增删改查,比如查找元素(`select()`)、获取属性值(`attr()`)、修改文本内容(`text()`)等。 3. **清理和标准化**:Jsoup能自动...
4. **数据提取**:Jsoup支持选择和提取HTML元素的属性值,如文本内容、类名等,这对于数据抓取尤其有用。 5. **数据修改**:除了读取,Jsoup也允许对HTML结构进行修改,可以添加、删除或更新元素,方便进行HTML内容...