Java爬虫——Jsoup

  一直以来写爬虫是用python和php,现在为了能在安卓app中使用爬虫只能再学习java爬虫(语言只是工具)
在用python写爬虫的时候我一般用 requests库 和 BeautifulSoup库,在使用起来还是很方便的,能将复杂的HTML标记语言转化为复杂的树形结构,这样在对数据提取的时候会方便很多。
在了解Java爬虫的时候知道了Jsoup这类包,看起来还是很方便的。在使用之前我们需要做一些准备,下载Jsoup jar包
然后在idea中的 project structure 选择 Module  选择 + Add 然后找到你的jar包的位置。
开始写代码,我们这里爬取的网站是一个垃圾分类网站。

</span></p>
//主体爬虫内容
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    Document document = Jsoup.connect(url).get();   // url 换成目标网址
                    Elements garbageName = document.select("h3");  // 获取名字
                    Elements garbageType = document.select("strong");  // 获取类型
                    for(i = 0; i < garbageName.size(); i++){
                        System.out.println(garbageName.get(i).text());
                        System.out.println(garbageType.get(i).text());
                        }
                    }

                } catch (IOException e) {
                    e.printStackTrace();
                }

            }
        }).start();
<p style="padding-left: 40px;"><span style="font-size: 14pt;">

在使用Jsoup时,我们需要创建进程和异常处理,我认为是,网络数据传输非常容易出错。
在这里我们先用Document去解析该url的html,然后用 Elements 对象获得Document对象中的特定标签,在这里我使用的是select的方法,也可以用DOM的方法 比如getElementsById()之类的具体可以看Jsoup官方文档,关于标签我们可以在该网站按F12或者对准你想要的对象右击检查元素,就能看到该对象在什么标签中,这里的是h3标签和strong标签。大致内容,便是如此。
爬虫都大同小异,只不过在不同的语言中代码规范和代码量的问题,终究还是那句话语言只是工具,完成一个项目的时候需要什么功能,需要用什么语言去完成,切不可强求。

点赞

发表评论

昵称和uid可以选填一个,填邮箱必填(留言回复后将会发邮件给你)
tips:输入uid可以快速获得你的昵称和头像

Title - Artist
0:00