服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - 详解java爬虫jsoup解析多空格class数据

详解java爬虫jsoup解析多空格class数据

2021-06-24 09:49243644739 Java教程

在本篇内容中小编给大家分享了java爬虫jsoup怎么解析多空格class数据的方法和技巧,需要的朋友们跟着学习下。

在使用jsoup爬取其他网站数据的时候,发现class是带空格的多选择,如果直接使用doc.getelementsbyclass(“class的值”),这种方法获取不到想要的数据。

1、问题描述:

在使用jsoup爬取其他网站数据的时候,发现class是带空格的多选择,如果直接使用doc.getelementsbyclass(“class的值”),这种方法获取不到想要的数据。

爬取网站页面结构如下:

详解java爬虫jsoup解析多空格class数据

2、其中文章列表的div为:<div class="am-cf inner_li inner_li_abtest"></div>

我们可以看到其class的值为:am-cf inner_li inner_li_abtest。带空格的。多值的。

如果我们还是用getelementsbyclass这个方法获取的话,是获取不到的。eclipse中断点如下:

详解java爬虫jsoup解析多空格class数据

3、可以看到获取的值的长度size=0。没有获取到数据。

经过各方搜索,发现解决方案:使用的不是getelementsbyclass方法,可以使用其他方法。

先上成功后截图:

详解java爬虫jsoup解析多空格class数据

4、我们可以看到数据的长度size=20了。说明获取到数据了。

下面讲解select方法使用:

elements org.jsoup.nodes.element.select(string cssquery)

详解java爬虫jsoup解析多空格class数据

5、样式选择器。

查看源码:

详解java爬虫jsoup解析多空格class数据

6、我们知道这个可以多个。

在看看我们案例中使用的是:div.am-cf.inner_li.inner_li_abtest。为什么要这么写呢?

查看需要爬取文章的页面结构:

详解java爬虫jsoup解析多空格class数据

总结:以上就是关于java爬虫jsoup解析多空格class数据的详细内容,感谢大家的阅读和对服务器之家的支持。

原文链接:https://jingyan.baidu.com/article/c85b7a64bfca85003bac95ed.html

延伸 · 阅读

精彩推荐