jsoup使用样式class抓取数据时空格的处理_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > jsoup使用样式class抓取数据时空格的处理

jsoup使用样式class抓取数据时空格的处理

 2013/8/27 18:04:50  生如夏花之灿烂  博客园  我要评论(0)
  • 摘要:最近在研究用android和jsoup抓取小说数据,jsoup的使用可以参照http://www.open-open.com/jsoup/;在抓纵横中文网永生这本书的目录内容时碰到了问题,永生的书简介urlhttp://book.zongheng.com/book/48552.html中,我要抓取<aclass="buttonread"href="http://book.zongheng.com/showchapter/48552.html">点击阅读</a>
  • 标签:使用 数据 抓取数据 JS class

最近在研究用android和jsoup抓取小说数据,jsoup的使用可以参照http://www.open-open.com/jsoup/;在抓纵横中文网永生这本书的目录内容时碰到了问题,

永生的书简介url http://book.zongheng.com/book/48552.html中,我要抓取 class="webkit-html-tag" style="text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: pre-wrap; orphans: 2; widows: 2; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;"><a class="button read" href="http://book.zongheng.com/showchapter/48552.html">点击阅读</a>这个链接的url 再根据这个url到索引页,解析索引页的章节目录和链接。使用jsoup抓取class可以直接这样调用

Document doc = Jsoup.parse("http://book.zongheng.com/book/48552.html");

doc.select(".button read");尝试后发现class中有空格无法抓到对应链接。上百度搜了一圈找到http://hi.baidu.com/chen88358323/item/459090031758c691a3df4389

这个解决方案不太好。想到jsoup和jquery的selec机制很像,又查到了http://zhidao.baidu.com/question/311666643.html。这篇文章很有启发。

最后经过测试发现带空格的class可以写成两个select

 写成 Elements indexEs = doc.select(".button").select(".read");成功抓取该书所有目录和链接。

 

发表评论
用户名: 匿名