Jsoup获取具有CDATA标签的javascript内容?
发布时间:2020-05-25 11:20:58 所属栏目:Java 来源:互联网
导读:我正在使用Jsoup来解析网页.但是有些我希望解析的信息是在CDATA标记内部,这会阻止解析器提取内部数据.我如何从CDATA标签中提取数据? 例: script type=text/javascript!--// ![CDATA[ OA_show(300x250);// ]] --/script script type=text/javas
|
我正在使用Jsoup来解析网页.但是有些我希望解析的信息是在CDATA标记内部,这会阻止解析器提取内部数据.我如何从CDATA标签中提取数据?
<script type='text/javascript'><!--// <![CDATA[
OA_show('300x250');
// ]]> --></script>
<script type='text/javascript'>alert("Hello");</script>
如果我使用Jsoup解析此页面并尝试使用“script [type = text / javascript]”选择页面中所有匹配的元素,我将返回页面中没有CDATA标签而不是警报的其他脚本的内容(“你好”);值. 谢谢! 解决方法String page = "<script type='text/javascript'><!--// <![CDATA[n" +
" OA_show('300x250');n" +
"// ]]> --></script>n" +
" <script type='text/javascript'>alert("Hello");</script>";
String html = Jsoup.parse(page).select("script").get(0).html();
html = html.replace("<!--// <![CDATA[","");
html = html.replace("// ]]> -->","");
System.out.println(html);
结果 OA_show('300x250'); (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
