有关JSOUP学习分享(一)

        其实现在用JSOUP爬虫的也不多了,但是由于最近换公司,做数据爬虫需要用到,就看了下,感觉还是挺好用的,原理什么的感觉和weblogic也差不到哪里去,废话少说,这里就简单的分享下最近接触的干货。

        JSOUP实现原理也简单说一下,可能有不对的地方评论欢迎指正。我们可以使用JSOUP直接解析某个URL地址或者指定的HTML文本,将抓取的网页或者文本内容加载到Document中,然后可以针对这个doucument进行解析,选择,利用dom或者css或者匹配正则来获取你需要的内容。下面是我项目脚本的内容部分分享,可以供大家一起参考学习,从浅入深:

        第一步:当然是在项目中导入需要的jar包,使用maven管理的可以直接在pom文件里面导,

没有的同学可以去官网下载jar包https://jsoup.org/download。

        接下来我们就可以正式开始第一个JSOUP项目抓取工作了

        第二步:初始化或者指定url,将内容加载到document并制定编码格式

            String url="http://baidu.com.cn"
            String result = RequestUtil.doGet(url,"GBK")

//            println(result);
            Document doc = Jsoup.parse(result)

在这里我们可以看到你已经把这个网页内容加载进去了,然后我们可以开始根据需求来抓取需要的数据

    第三步:根据需求抓取数据:

        我们这里先介绍使用选择器来抓取数据,这里可以利用到网页的dom节点class或者id来抓取文本下的

内容:

        1、根据class选择器来选择文本:

doc.select(".head_wrapper")

这里的.head_wrapper就是网页标签的一个类   ,抓取到的文本就是.head_wrapper这个标签及其子节点的里面的内容。

        2、根据id选择器来选择文本:

Element link2=doc.select("#css_index_result")

这里选取的是以这个为id的标签内容以及其子节点的所有内容

        3、抓取a标签的href:

Elements hrefs = doc.select("a[href]");


        4、灵活使用^,$与~分别抓取以什么开头,以什么结尾,正则表达式匹配的内容

//以.com结尾的img标签内容抓取
Elements hrefs = doc.select("img[src$=.com]");
println(hrefs)
//以//www.开头的img标签内容抓取
Elements imgs = doc.select("img[src^=//www.]");
println(imgs)
//正则表达式匹配以png,gif,jpg结尾的img标签抓取
 Elements jpgs = doc.select("img[src~=(?i)\\.(png|gif|jpg?g)]");
println(jpgs)

以上抓取的内容可能一条或者多条,多条存放就存放在一个list中,可以遍历这个list查看,ok,这里基础内容写到这里,接下来更新JSOUP学习分享(二),感谢您的阅读

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值