java爬虫

Spiderman Java开源垂直爬虫抓取示例【需求小复杂】

强颜欢笑 提交于 2020-05-08 04:22:08
首先要说明的是,本文仅介绍了Spiderman解析 XML 的示例,Spiderman解析 HTML 也是差不多的原理,不过更考验“爬虫”的能力。 这个以后再发篇文章详细说明 【 已经有了请点击这里 】:) 在Github的spiderman-sample项目里面有好几个案例,可以跑跑看。 这是Spiderman链接: http://www.oschina.net/p/spiderman 1.Spiderman是一个垂直领域的爬虫,可用于抓取特定目标网页的内容,并且解析为所需要的业务数据,整个过程追求无需任何编码就能实现,这样带来的好处是部署简单,并且网页内容变化可以灵活应对。 2.本文演示所抓取的目标URL是: http://www.alldealsasia.com/feeds/xml 这是一个XML文件,提供了该网站所有活动的Deal 3.怎么用Git+Maven搭建Spiderman使用这里就不详细说明了 4.直接看效果 这是目标网页【一个xml页面】 为了完成以上的目标,需要配置一个xml文件让Spiderman根据目标执行 最后来看看抓取之后的结果数据,我是在回调方法里面写入文件的: // 初始化蜘蛛 Spiderman.init(new SpiderListener() { public void onNewUrls(Thread thread, Task task,

Java简单爬虫系列(1)---什么是爬虫,爬虫原理,怎么来实现爬虫

☆樱花仙子☆ 提交于 2020-01-09 22:39:51
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 很早就想写个小爬虫了,一直拖拖拖,真是应了一句话,人有多大胆就能拖多晚。这几天终于开始搞了搞,现写下一些需要用到的知识,用作自己储备和希望能给同样需要的oser们一点经验。 这个系列一共有5篇,分为 Java简单爬虫系列(1)---什么是爬虫,爬虫原理,怎么来实现爬虫 Java简单爬虫系列(2)---HttpClient的使用 Java简单爬虫系列(3)---正则表达式和Java正则API的使用 Java简单爬虫系列(4)--- 正则表达式获取百度LOGO Jsoup使用获取推荐列表 下面是第一篇的内容,《什么是爬虫,爬虫原理》 你让我给你说什么是爬虫,我也不知道,我知道的是它可以在互联网上根据取得的url,顺着url一个一个的去访问页面(页面资源都访问到了,你就可以干你想干的事情了) 关于原理下面这段话我觉得十分有用 for each 链接 in 当前网页所有的链接 { if(如果本链接是我们想要的 || 这个链接从未访问过) { 处理对本链接 把本链接设置为已访问 } } 想使用爬虫, 首先你要给它一个种子链接URL 在种子链接的页面查找其他的URL,重复1步骤 有链接有页面,然后你可以在页面中查找需要的内容 这其中需要的知识点 http请求器 由于不是用浏览器访问,我们需要在本地的文件中发起请求获取资源