java解析XML和java解析HTML

java解析XML和java解析HTML,第1张

attr(String key) 获取属性 attr(String key, String value) 设置属性

attributes() 获取所有属性

id() , className() and classNames() 通过标签的id,css的类名称,所有css的类名称获取信息

text() 获取文本内容text(String value) 设置文本内容

html() 获取元素内HTMLhtml(String value)设置元素内的HTML内容

outerHtml() 获取元素外HTML内容

data() 获取数据内容(例如:script和style标签)

tag() and tagName() 获取标签和标签名称

append(String html) , prepend(String html)

appendText(String text) , prependText(String text)

appendElement(String tagName) , prependElement(String tagName)

html(String value)

你请求的时候 地址写上js访问之后的地址 将返回的数据用jsoup去处理 基本可以满足你的需求 如果还是不行 你可以html下载到本地用jsoup解析 希望回答对你有帮助,如果有疑问,请继续追问。

这段html实际上是不符合规范的。在用jsoup解析时会出现问题。

我想到一个办法解决这个问题。

首先我想你应该是想得到 标题、馆藏复本的数目、可借复本的数目、朱印宏编著和长江出版社。

所以我们先把上面html里面的文字全部得到即:

java开发解析 馆藏复本:3 可借复本:0 朱印宏编著 长江出版社

然后我想在这段文字中 “馆藏复本:”、“可借复本:”、“编著” 这几个字应该是固定不变的。所以我们可以用正则表达式去对它进行解析,得到你想要的文字。

代码如下:

public class Test {

public static void main(String[] args) {

String html = "<div class=\"list_books\" id=\"list_books\"><td>java开发解析</td><p><span><strong>馆藏复本:</strong>3 <br /> <strong>可借复本:</strong>0 </span>朱印宏编著 <br /> 长江出版社</p> </div>";

Document doc = Jsoupparse(html);

String e = docselect("#list_books")text()replaceAll("[\\s]+", "");

//Systemoutprintln(e);

Pattern p = Patterncompile("^()馆藏复本:([\\d]+)可借复本:([\\d]+)()编著()$");

Matcher m = pmatcher(e);

if(mfind()){

for(int i=1;i<=mgroupCount();i++){

Systemoutprintln(mgroup(i));

}

}

}

}

如果如下:

java开发解析

3

0

朱印宏

长江出版社

Android java代码如下:

import orgjsoupJsoup;

import orgjsoupnodesDocument;

import orgjsoupnodesElement;

import orgjsoupselectElements;

Document doc = Jsoupconnect(">

以上就是关于java解析XML和java解析HTML全部的内容,包括:java解析XML和java解析HTML、Android用jsoup解析html时如果<td>标签有第四行我该如何提取第四行、jsoup教程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9715682.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存