不知不觉毕业快一年了,工作逐渐趋于平淡,从一个对编程了解得很少甚至完全一窍不通的小小菜,终于成为了一枚小菜,总而言之,算是入了IT这一行。这大半年马马虎虎做了三个项目,有安卓项目,有Java Web项目,也有Asp.Net项目,接触到的东西太多了,自然感觉自己要学的东西越多,现在对学习方向好迷茫啊。今天人品也不行,进地铁的时候,手机被小心被扒了,说多了都是泪啊。就在这愤恨和无聊之际,开始了我的第一篇博客.

  最近跟我同学新成立了个工作室.需要用到爬虫技术,由于他们都没做过,而我以前做过一些简单的爬虫技术(高中的时候喜欢看小说,所以自己做了个爬虫下小说玩)。以前的实现方式是直接用URLConnection发送POST请求获取整个网页内容,然后自己写正则表达式去获取自己需要的内容,工作量有点大。于是在网上搜搜看,发现Jsoup还不错,跟Jquery的API相差无几。花了几个小时看了看API和敲了几个Demo就开始实践了。这里我们以糗事百科为例。

  首先,我们打开IE进入糗事百科的首页,选择检查元素。调整下格式,图如下(QQ截图,请尽情吐槽⊙▂⊙):                            

  在上面的三张图中,我们发现糗事百科的每一段内容都是包含在一个class="block untagged mb15 bs2"的div中的,而每个div中又包含了4个子div,其中class="author"的div用于显示内容发布者的信息(包括头像和昵称),class="content"的div主要用于显示图片配文,class="thumb"主要是用于显示图片。至于最后一个class="bar"的div则是用于显示一些媒体分享操作栏。

  知道了上面这些就好办了。下面大家就可以敲代码啦。`(*∩_∩*)′。

  

Java+Jsoup实现网页内容抓取的更多相关文章

  1. 使用jsoup进行网页内容抓取

    对网页内容的抓取比较的感兴趣,于是就简单的学习了一下,如果不使用任何的框架去抓取网页的内容,感觉有点难度,我就简单点来吧,这里所使用的jsoup框架,抓取网页的内容与使用jquery选择网页的内容差不 ...

  2. 使用Jsoup函数包抓取网页内容

    之前写过一篇用Java抓取网页内容的文章,当时是用url.openStream()函数创建一个流,然后用BufferedReader把这个inputstream读取进来.抓取的结果是一整个字符串.如果 ...

  3. Java下HttpUnit和Jsoup的Http抓取

    简单记录下:搜集信息-分析问题-解决问题 关于html文档的操作现成库有: HttpUnit 很老了,不更了 http://www.httpunit.org/  20 May 2008 HttpUni ...

  4. JAVA使用Gecco爬虫 抓取网页内容(附Demo)

    JAVA 爬虫工具有挺多的,但是Gecco是一个挺轻量方便的工具. 先上项目结构图. 这是一个 JAVASE的 MAVEN 项目,要添加包依赖,其他就四个文件.log4j.properties 加上三 ...

  5. Java爬虫,信息抓取的实现

    转载请注明出处:http://blog.csdn.net/lmj623565791/article/details/23272657 今天公司有个需求,需要做一些指定网站查询后的数据的抓取,于是花了点 ...

  6. Java模拟登录系统抓取内容【转载】

    没有看考勤的习惯,导致我的一天班白上了,都是钱啊,系统也不发个邮件通知下....     为了避免以后还有类似状况特别写了个java模拟登录抓取考勤内容的方法(部分代码来自网络),希望有人修改后也可以 ...

  7. (转)Java爬虫,信息抓取的实现

    转载请注明出处:http://blog.csdn.net/lmj623565791/article/details/23272657 今天公司有个需求,需要做一些指定网站查询后的数据的抓取,于是花了点 ...

  8. Java爬虫,信息抓取的实现(转)

    转载请注明出处:http://blog.csdn.net/lmj623565791/article/details/23272657 今天公司有个需求,需要做一些指定网站查询后的数据的抓取,于是花了点 ...

  9. Java实现简单网页抓取

    需求说明:使用Java抓取网页信息,并以字符串的形式返回. 使用Java代码实现: package net.ibuluo.spider.util; import java.io.IOException ...

随机推荐

  1. AC日记——Flag Codeforces 16a

    A. Flag time limit per test 2 seconds memory limit per test 64 megabytes input standard input output ...

  2. php解析json字符串变量总是空白null

    通过接口获取的json字符串使用json_decode始终无法正确解析,返回空白. 直接把结果字符串复制出来手动创建一个变量却正常,在前端js也能解析,搞了半天不得其解,最后发现是接口输出的结果包含有 ...

  3. python笔记1:python基础

    1.Python模块的标准文件模板: #!/usr/bin/env python #第1行注释可以让这个 .py 文件直接在Unix/Linux/Mac上运行 # -*- coding: utf-8 ...

  4. Careercup | Chapter 6

    6.2 There is an 8x8 chess board in which two diagonally opposite corners have been cut off. You are ...

  5. codeforces 997E(线段树)

    分析: 首先考虑如何计算整个数组有多少个good区间 容易发现一个区间是good区间当且仅当max-min-len=-1,且任意区间max-min-len>=-1 我们可以枚举右端点,然后维护前 ...

  6. systemtap学习笔记及疑问

    http://blog.csdn.net/sunnybeike/article/details/7769663

  7. DevExpress右键菜单使用 z

    添加BarManager和popupMenu组建: 设置popupMenu组件的Manager属性: 右键点击popupMenu主键,点击Customize选项添加菜单:    然后便可添加到鼠标事件 ...

  8. 拦截器及 Spring MVC 整合

    一.实验介绍 1.1 实验内容 本节课程主要利用 Spring MVC 框架实现拦截器以及 Spring MVC 框架的整合. 1.2 实验知识点 Spring MVC 框架 拦截器 1.3 实验环境 ...

  9. discuz X3.1+Apache2.2+php-5.2.17+mysql5.6.14+Discuz_X3.1

    discuz X3.1+Apache2.2.25+php-5.2.17+mysql5.6.14+Discuz_X3.1 一.准备 1.httpd-2.2.25-win32-x86-no_ssl.msi ...

  10. 改变其他iframe的src

    window.parent.$("#ifr").location="????";);来改变