这篇文章主要介绍了java爬虫jsoup解析多空格class数据的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
在使用jsoup爬取其他网站数据的时候,发现class是带空格的多选择,如果直接使用doc.getElementsByClass(“class的值”),这种方法获取不到想要的数据。
1、问题描述:
在使用jsoup爬取其他网站数据的时候,发现class是带空格的多选择,如果直接使用doc.getElementsByClass(“class的值”),这种方法获取不到想要的数据。
爬取网站页面结构如下:
2、其中文章列表的div为:<div class="am-cf inner_li inner_li_abtest"></div>
我们可以看到其class的值为:am-cf inner_li inner_li_abtest。带空格的。多值的。
如果我们还是用getElementsByClass这个方法获取的话,是获取不到的。eclipse中断点如下:
3、可以看到获取的值的长度size=0。没有获取到数据。
经过各方搜索,发现解决方案:使用的不是getElementsByClass方法,可以使用其他方法。
先上成功后截图:
4、我们可以看到数据的长度size=20了。说明获取到数据了。
下面讲解select方法使用:
Elements org.jsoup.nodes.Element.select(String cssQuery)
5、样式选择器。
查看源码:
6、我们知道这个可以多个。
在看看我们案例中使用的是:div.am-cf.inner_li.inner_li_abtest。为什么要这么写呢?
查看需要爬取文章的页面结构:
感谢你能够认真阅读完这篇文章,希望小编分享的“java爬虫jsoup解析多空格class数据的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。