以下是我需要解析的文本示例.
<P>The symbol <IMG id="pic1" height=15 src="images/itemx/image001.gif" width=18>indicates......</P>
Run Code Online (Sandbox Code Playgroud)
我需要进行清理.因此,应用以下代码将删除src属性,因为它不以有效协议开头.无论如何配置Jsoup来获取属性?我想尽可能避免使用绝对网址.
Jsoup.clean(content, Whitelist.basicWithImages());
Run Code Online (Sandbox Code Playgroud) 我有一个用户提交的字符串,其中包含HTML内容
"<p></p><div></div><p>Hello<br/>world</p><p></p>"
Run Code Online (Sandbox Code Playgroud)
我想转换这个字符串,以便删除空标记对(但<br/>保留空标记).例如,此转换的结果应将上面的字符串转换为
"<p>Hello<br/>world</p>"
Run Code Online (Sandbox Code Playgroud)
我想使用JSoup来做这件事,因为我已经在我的类路径中使用了这个,并且我最容易在服务器端执行此转换.
我想这个问题已被问到,但我找不到任何东西.
从DocumentJsoup中的元素,我如何遍历HTML内容中的所有元素?
我正在阅读文档,我正在考虑使用该childNodes()方法,但它只接受下面一个leval的节点(我理解).我想我可以使用这种方法进行一些递归,但我想知道是否有更合适/本地的方法来做到这一点.
我试图在Java中解析CSS DOM,并且已经使用jSoup为HTML提供相同的功能.我正在浏览jSoup API(当然还有Google),但没有找到任何与CSS相关的解析类.有没有办法使用jSoup将CSS格式解析为DOM,还是需要不同的API?
我想删除标签之间的所有内容.输入的示例可以是
输入:
<body>
start
<div>
delete from below
<div class="XYZ">
first div having this class
<div>
waste
</div>
<div class="XYZ">
second div having this class
</div>
waste
</div>
delete till above
</div>
<div>
this will also remain
</div>
end
</body>
Run Code Online (Sandbox Code Playgroud)
输出将是:
<body>
start
<div>
delete from below
delete till above
</div>
<div>
this will also remain
</div>
end
</body>
Run Code Online (Sandbox Code Playgroud)
基本上,我必须删除第一次出现的整个块 <div class="XYZ">
谢谢,
我有问题,我想过滤某些可能包含HTML的文本.我使用jsoup白名单并清理工作非常好的标签.
我只有一些标签可以包含属性的问题,主要是样式或类,但也可能有不同的属性.(名称,目标,等等)清洁时没有问题,因为它们被很好地剥离了,但是当将某些标签列入白名单时会因为属性而被阻止.基本的白名单似乎不包括风格或类属性加上我不能保证我遇到的其他内容.
由于我想允许相当多的标签,但在清理过程中删除大部分标签,我不想为我允许的所有标签添加所有属性.最简单的方法是从所有标签中删除所有属性,因为我对它们不感兴趣,然后检查带有普通标签的剥离文本是否有效.
是否有一个删除所有属性或一些简单循环的函数,另一个选项是告诉白名单忽略所有属性并简单地在标签上列入白名单.
所以,我试图使用JSoup解析一个简单的列表.不幸的是,程序只返回条目,直到列表中以N开头的条目为止.我不知道为什么会这样.这是我的代码:
public ArrayList<String> initializeMangaNameList(){
Document doc;
try {
doc = Jsoup.connect("http://www.mangahere.com/mangalist/").get();
Elements items = doc.getElementsByClass("manga_info");
ArrayList<String> names = new ArrayList<String>();
for(Element item: items){
names.add(item.text());
}
return names;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
Run Code Online (Sandbox Code Playgroud)
那么为什么List不包含所有条目?网页是否有错误?或者解析器?我可以使用解决方法绕过此问题吗?究竟是什么导致了这个问题呢?
我试图从这个网站上抓取数据:http://www.bundesliga.de/de/liga/tabelle/
在源代码中,我可以看到表,但没有内容,只是这样的事情:
<td>[no content]</td>
<td>[no content]</td>
<td>[no content]</td>
<td>[no content]</td>
....
Run Code Online (Sandbox Code Playgroud)
使用firebug(Firefox中的F12)我也不会看到任何内容,但我可以选择表格,然后通过firebug选项复制innerHTML.在那种情况下,我得到了关于团队的所有信息,但我不知道如何获取Jsoup中的内容表.
我使用Jsoup从URL获取页面.我可以使用以下代码行提取某些id的链接:
Elements links = doc.select("a[href]#title0");
Run Code Online (Sandbox Code Playgroud)
如果我只知道其ID的一部分,例如'title',我该如何找到这些元素.我知道我可以找到所有与href 的链接,然后遍历'链接'并检查它的id是否包含'title'子字符串,但是我想避免这种方法.有没有办法过滤选择器中的链接,并检查它的id是否包含'title'子串?