之前看了看 洪祥的csdn app 制作,里面有从网页抓取数据的. 之前对这块操作没有接触过,所以网上差了一些资料,现在整理下相关的内容.
首先是关于Jsoup , Jsoup 是网页抓取的首选.但是请注意: 如果Jsoup去抓取的页面的数据,全都是页面加载完成后,ajax获取形成的,是抓取不到的。
具体请看鸿翔的博客. 地址是 网页信息抓取进阶 支持Js生成数据 Jsoup的不足之处
首先看看Jsoup 的代码:

这个是网页源代码中截取的一段,我们需要去解析这段代码:

<div class="unit">
<h1><a href="http://www.csdn.net/article/2015-05-12/2824667" target="_blank" >万达圆梦“+互联网”的支点:支付</a></h1>
<h4>发表于<span class="ago">2015-05-12 15:58</span>|<span class="view_time">1676次阅读</span>|<span class="num_recom">4条评论</span></h4>
<dl>
<dt>
<a href="http://www.csdn.net/article/2015-05-12/2824667" target="_blank"><img src="http://img.ptcms.csdn.net/article/201505/12/5551b25feb70a_thumb.jpg" alt="" /></a>
</dt>
<dd>万达的布局逻辑是,线下依然核心支柱,而线上则不断完善加快线下产业的发展。而收购的支付——快钱,正是撬动万达快速转型的这个必不可少的支点。有了它,万达可以成为一线电商平台、做互联网金融和推进线下变革。</dd>
</dl>
<div class="tag">
<a href="http://www.csdn.net/tag/%E4%BA%92%E8%81%94%E7%BD%91/news" target="_blank">互联网</a>
<a href="http://www.csdn.net/tag/%E7%A7%BB%E5%8A%A8%E6%94%AF%E4%BB%98/news" target="_blank">移动支付</a>
<a href="http://www.csdn.net/tag/%E7%94%B5%E5%AD%90%E5%95%86%E5%8A%A1/news" target="_blank">电子商务</a>
<a href="http://www.csdn.net/tag/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4/news" target="_blank">阿里巴巴</a>
<a href="http://www.csdn.net/tag/%E6%94%AF%E4%BB%98%E5%AE%9D/news" target="_blank">支付宝</a>
<a href="http://www.csdn.net/tag/%E7%8E%8B%E5%81%A5/news" target="_blank">王健</a>
<a href="http://www.csdn.net/tag/%E8%85%BE%E8%AE%AF/news" target="_blank">腾讯</a>
<a href="http://www.csdn.net/tag/%E4%B8%87%E8%BE%BE/news" target="_blank">万达</a>
</div>
</div>

这是使用 Jsoup 解析:

    public List<NewItem> getNewsItems(int newsType,int currentPage) throws CommonException{// 自己写的得到url 地址的工具类String urlStr = URLUtil.generateUrl(newsType, currentPage);//使用 http 发送get请求 .  String htmlStr = DataUtil.doGet(urlStr);List<NewItem> newItems = new ArrayList<NewItem>();NewItem newItem = null;Document document = Jsoup.parse(htmlStr);Elements units = document.getElementsByClass("unit");for (int i = 0; i < units.size(); i++) {newItem = new  NewItem();newItem.setNewsType(newsType);Element unit_ele = units.get(i);Element h1_ele = unit_ele.getElementsByTag("h1").get(0);Element h1_a_ele = h1_ele.child(0);String title = h1_a_ele.text();String href = h1_a_ele.attr("href");newItem.setLink(href);newItem.setTitle(title);Element h4_ele = unit_ele.child(1);Element span_ele = h4_ele.getElementsByTag("span").get(0);String date =  span_ele.text();newItem.setDate(h4_ele.text() + date);Element d1_ele = unit_ele.getElementsByTag("dl").get(0);Element d1_dt_ele = d1_ele.child(0);// 可能没有图片  try {Element img_ele = d1_dt_ele.child(0).child(0);String imgLink = img_ele.attr("src");newItem.setImgLink(imgLink);} catch (Exception e) {}Element dl_dd_ele = d1_ele.child(1);String content = dl_dd_ele.text();newItem.setContent(content);newItems.add(newItem);}return newItems;}

上面的代码不难, 就是解析数据.相信仔细看都可以看懂.

下面总结下HttpUnit :
具体请看鸿翔的博客. 地址是 网页信息抓取进阶 支持Js生成数据 Jsoup的不足之处

ok 我的第一篇博客 哈哈 为自己写的

关于网页抓取信息 Jsoup 和 HttpUnit 的使用相关推荐

  1. 玩转Java网页抓取

    - 使用Java进行网页抓取 - 用于网页抓取的流行语言有Python.JavaScript和Node.js.PHP.Java.C#等.因为有很多选择,想要确定哪种语言最合适并不容易.每种语言都有其优 ...

  2. python爬虫怎么爬同一个网站的多页数据-如何用Python爬数据?(一)网页抓取

    如何用Python爬数据?(一)网页抓取 你期待已久的Python网络数据爬虫教程来了.本文为你演示如何从网页里找到感兴趣的链接和说明文字,抓取并存储到Excel. 需求 我在公众号后台,经常可以收到 ...

  3. python爬网站数据实例-如何用Python爬数据?(一)网页抓取

    如何用Python爬数据?(一)网页抓取 你期待已久的Python网络数据爬虫教程来了.本文为你演示如何从网页里找到感兴趣的链接和说明文字,抓取并存储到Excel. 需求 我在公众号后台,经常可以收到 ...

  4. vs用Python爬数据?(一)网页抓取

    你期待已久的Python网络数据爬虫教程来了.本文为你演示如何从网页里找到感兴趣的链接和说明文字,抓取并存储到Excel. (由于微信公众号外部链接的限制,文中的部分链接可能无法正确打开.如有需要,请 ...

  5. HTML Parser Jsoup - 网页抓取百度百科信息的例子

    目标:获取百度百科基本信息.信息列表.人物图片(同名情况暂不考虑). 重点:调用开源Jar包Jsoup对HTML解析.网页抓取.简单爬虫. 例子(部分类去掉,运行需改改code): import ja ...

  6. 用Python构建网页抓取器

    借助使用Python构建的尖端网页抓取技术,启动您的大数据项目 Scrape the Planet! Building Web Scrapers with Python 你会学到什么 如何理论化和开发 ...

  7. 一段使用cURL实现的网页抓取源码,支持POST,Cookies,代理,自定义头.

    为什么80%的码农都做不了架构师?>>>    <?php /*** 名称:cURL网页抓取* 版本:v0.3* 作者:吣碎De人(http://www.qs5.org)* 最 ...

  8. 有关网页抓取问题的一些经验总结 - passover【毕成功的博客】 - 51CTO技术博客

    有关网页抓取问题的一些经验总结 - passover[毕成功的博客] - 51CTO技术博客 有关网页抓取问题的一些经验总结 2011-05-05 18:07:38 标签:爬虫 网页抓取 在写爬虫的时 ...

  9. python3爬取网易云歌单数据清洗_网页抓取网易云音乐及评论数据分析

    网页抓取网易云音乐及评论数据分析 游贤 成都理工大学信息科学与技术学院 [摘 要] 摘要:为了分析网易云音乐中哪些歌曲是热门歌曲,哪些歌曲的评论 最多,从而了解到人们对于不同音乐类型的喜爱程度,采用成 ...

最新文章

  1. JAVA变量path , classpth ,java_home设设置作用和作用
  2. 小派(PiMax)vr Artisan固件升级失败,没反应了
  3. 第四十四期:1.3万亿条数据查询如何做到毫秒级响应?
  4. java读取文件夹_Java读取某个文件夹下的所有文件(支持多级文件夹)
  5. 【ajax】Ajax $().load() 禁用缓存
  6. java spring配置文件路径_java - 在spring b中从命令行设置活动配置文件和配置位置...
  7. Mac mysql 忘记 root 密码,phpmyadmin 登录 No such file or directory 错误处理
  8. jmeter笔记02
  9. 友勤签约中芝软件系统(上海)有限公司Oracle Crystal Ball Suite软件项目
  10. Matlab - 演化博弈论实现
  11. R语言回归及混合效应模型及贝叶斯实现
  12. Android学习计划[转载Sammy_Snail]
  13. android技术篇(三)解密data区
  14. java 快递100_使用快递100 查询链接实现快速查询的示例
  15. 阿里云如何绑定域名(阿里云域名如何绑定ip)
  16. 【动手学深度学习PyTorch版】6 权重衰退
  17. npm 淘宝镜像使用
  18. 腾讯云又搞特价活动打折续费还可以有优惠机不可失
  19. 【CV】Latent diffusion model 扩散模型体验
  20. untracked working tree file已解决

热门文章

  1. 独在异乡,想家的感觉
  2. GCD最大公约数算法
  3. JavaScript知识点复习--思维导图(全)
  4. 盘点程序员都不一定知道的小众网站!建议收藏,java编程必备!
  5. java tcp 登录_java 网络编程-TCP-双向登录
  6. ubuntu 安装openmpi
  7. MySQL 最左前缀原则
  8. 学习大数据的第19天——正则表达式、枚举类
  9. 头文件和源文件的关系
  10. L1-043 阅览室 c语言简单