webmagic

大三上寒假15天--第9天

泪湿孤枕 提交于 2020-02-10 00:25:03
无可奈何,昨天的问题无法解决,只能把从安装spark重新开始,下载和作者相同的版本,版本如下: 暂时还没有找到,今天还学习了,webmagic爬虫,进行了环境的配置。 作者给的 wget http://192.168.1.100:60000/allfiles/second/edu1/webmagic-0.7-libs.tar.gz并连接不上,所以我载网上自己下载了0.7.3版本的webmagic,进行了解压。 后面都和作者相同。 本人下载与github(https://github.com/code4craft/webmagic/releases/tag/WebMagic-0.7.3) 来源: https://www.cnblogs.com/my---world/p/12289399.html

寒假自学进度7

浪子不回头ぞ 提交于 2020-02-05 00:12:25
今天主要学习了scala正则表达式( https://www.runoob.com/scala/scala-regular-expressions.html )与文件I/O操作完成了实验3, 并学习认识了webmagic爬虫( https://www.cnblogs.com/justcooooode/p/7913365.html ) 文件写操作: 从屏幕上读取用户输入 从文件上读取内容 webmagic爬虫内容待补充。。。 来源: https://www.cnblogs.com/zzstdruan1707-4/p/12262093.html

webmagic的设计机制及原理-如何开发一个Java爬虫 转

╄→尐↘猪︶ㄣ 提交于 2020-01-19 21:49:17
此文章是webmagic 0.1.0版的设计手册,后续版本的入门及用户手册请看这里: https://github.com/code4craft/webmagic/blob/master/user-manual.md 之前就有网友在博客里留言,觉得webmagic的实现比较有意思,想要借此研究一下爬虫。最近终于集中精力,花了三天时间,终于写完了这篇文章。之前垂直爬虫写了一年多,webmagic框架写了一个多月,这方面倒是有一些心得,希望对读者有帮助。 webmagic的目标 一般来说,一个爬虫包括几个部分: 页面下载 页面下载是一个爬虫的基础。下载页面之后才能进行其他后续操作。 链接提取 一般爬虫都会有一些初始的种子URL,但是这些URL对于爬虫是远远不够的。爬虫在爬页面的时候,需要不断发现新的链接。 URL管理 最基础的URL管理,就是对已经爬过的URL和没有爬的URL做区分,防止重复爬取。 内容分析和持久化 一般来说,我们最终需要的都不是原始的HTML页面。我们需要对爬到的页面进行分析,转化成结构化的数据,并存储下来。 不同的爬虫,对这几部分的要求是不一样的。 <!--more--> 对于通用型的爬虫,例如搜索引擎蜘蛛,需要指对互联网大部分网页无差别进行抓取。这时候难点就在于页面下载和链接管理上--如果要高效的抓取更多页面,就必须进行更快的下载;同时随着链接数量的增多

JAVA 爬虫框架webmagic 初步使用Demo

混江龙づ霸主 提交于 2020-01-19 16:36:27
一想到做爬虫大家第一个想到的语言一定是python,毕竟python比方便,而且最近也非常的火爆,但是python有一个全局锁的概念新能有瓶颈,所以用java还是比较牛逼的, webmagic 官网 https://webmagic.io/ 讲的非常详细,当然java比较优秀的框架还有很多不知这些 各类JAVA爬虫框架 Python中大的爬虫框架有scrapy(风格类似django),pyspider(国产python爬虫框架)。 除了Python,Java中也有许多爬虫框架。 nutch apache下的开源爬虫程序,功能丰富,文档完整,有数据抓取解析以及存储的模块。 它的特点是规模大。 heritrix 比较成熟 地址:internetarchive/heritrix3 · GitHub很早就有了,经历过很多次更新,使用的人比较多,功能齐全,文档完整,网上的资料也多。有自己的web管理控制台,包含了一个HTTP 服务器。操作者可以通过选择Crawler命令来操作控制台。 crawler4j UCI大学(加利福尼亚欧文分校)出品,简洁,古老,结构清晰 webmagic 国产,借鉴了scrapy,有pipeline,功能比较简单。Request也有meta属性,meta属性是一个字典,meta属性的value是Object类型 具体参考 https://www.cnblogs

寒假日报day5

我的梦境 提交于 2020-01-18 16:28:09
我的老天,这个问题可是困扰了我许久,问题呢是这样的:摘自本人博客,有兴趣的可以去看看: https://q.cnblogs.com/q/125446/ 问题呢大概是,我获取到了我想要的但又不是很准确的信息,现在呢,我想准确获取我想要的信息,由于困在了webmagic的思路里,我一直在想webmagic中又没u有类似的解决方案,但我搜索到的答案大部分都是webmagic的直接教程,oh,shit!这并不是我想要的,在一番咨询下,我发现我不能局限于webmagic了,毕竟Java语言博大精深,一定还有其他解决方案,所以我换了个思路先得到 这样的输出,然后再对每一个处理,将他们作为字符串就有专门的解决方案了,那就是substring(int, int)的解决方案了 大概就是这样的,这样对字符串处理两次,我就能得到我想要的了,oh,我急需解决下一个问题去了,看着同学们的飞速进度,我只想我能在开学前不是50分起。 有待更新。。。 来源: https://www.cnblogs.com/msdog/p/12209204.html

寒假日报day01

℡╲_俬逩灬. 提交于 2020-01-10 20:35:20
  今天算是寒假的第一天?也不算,如果按考试结束就是假期的化,那我这该是第三天,但如果按学校的放假时间来算的话,这是提前1天,好了,废话到此结束,下面进入正题,爬虫的学习。   之前我也是用过爬虫的男人,还爬到了不少有趣的东西,就如我的第一个完整例子里面是全国大学排名,第二个是一堆电影,下一次就是作业---航班数据。这些呢,前两个呢,数据量少,且表格明确,非常容易上手,后面得就比较难了,需要伪登录以及页面跳转等等,下面是我的爬取过程: 伪登录: 但其实这一部分我也没搞清楚,所以暂时注释掉了, 找位置,获取 然后在输出,基本就可以得到自己的数据了,当然,中间的路程还是要靠自己走的,毕竟我也是一步一步自己磨出来的, 现在,老师给我们教程,学习webmagic爬虫,这是一款建立在java语言上的爬虫,这是webmagic的框架,本人还在研究中。 功能强大,易上手,wenbmagic只需要一个类加一些扩展包就能使用了,我自己试了试,但是没响应,后来我查看了一下,是教程上的网址404了,所以我还要去找另外的网站,或者找到这个网站,暂时还没有。 程序ing。。。。 来源: https://www.cnblogs.com/msdog/p/12177863.html

Java + golang 爬取B站up主粉丝数

…衆ロ難τιáo~ 提交于 2020-01-01 18:52:36
自从学习了爬虫,就想在B站爬取点什么数据,最近看到一些个up主涨粉很快,于是对up主的粉丝数量产生了好奇,所以就有了标题~ 首先,我天真的以为通过up主个人空间的地址就能爬到 https://space.bilibili.com/137952 但事与愿违,给这个地址发送请求返回来的并不是我们想要的页面数据,而是一个类似于要求用户更换浏览器的错误页面 我们可以使用postman来模拟发送这个请求 响应的页面就是这个 <!DOCTYPE html> <html> <head> <meta name=spm_prefix content=333.999> <meta charset=UTF-8> <meta http-equiv=X-UA-Compatible content="IE=edge,chrome=1"> <meta name=renderer content=webkit|ie-comp|ie-stand> <link rel=stylesheet type=text/css href=//at.alicdn.com/t/font_438759_ivzgkauwm755qaor.css> <script type=text/javascript>var ua = window.navigator.userAgent var agents = ["Android",

java爬虫框架webmagic

梦想的初衷 提交于 2019-12-22 10:27:44
  最近需要爬去网站的一些商品,就开始在网上找方法,本来是想着用Python做的,因为以前用Python写过一个小脚本,爬取一个文献网站上的免费文献.     步骤大概是这样的:1,先获取给定URL的html文件,然后在这个文件中用正则表达式匹配出需要的URL(可能含有分页的URL),然后再获取匹配出的URL的html,在这些html文件中会有可以下载的PDF文件的链接,然后把这些链接存到磁盘中.(这中间因为网站有防爬虫,所以中间花了点时间在模拟浏览器上).拿到链接之后,就是下载文献了,写了一个shell脚本,每次读一个链接下载,然后保存到指定的文件夹中.   这次的需求跟以前的需求有所不同,需要抓取目标网站的一些商品的信息,比上次有点复杂.花了一两天时间在网上找了好几个框架,最后决定使用webmagic基于Java的框架. 选择这个框架也是因为这个框架很方便,很容易进行二次开发,而且也集成了一些其它的工具,比如提取指定html标签的元素等.   webmagic四个主要的组件:1,downloader;2,PageProcessor;3,Scheduler;4,Pipeline.   Downloader负责从网上下载页面,PageProcessor负责解析页面,提取有用的信息,发现链接,Scheduler管理未抓取的URL以及去重,Pipeline就是存储和显示数据了

悠然乱弹:WebMagic VS TinySpider

a 夏天 提交于 2019-12-19 18:23:08
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 上次 @黄勇 提到与 @黄亿华 WebMagic比较的问题。我在后面简单回复了一下下,现系统整理一下,不一定正确。 两者都是可以用于网页数据抓取,都有良好的扩展性及架构设计,但是由于定位稍有差异,因此在开发的时候各有侧重点,今天就写一篇专门的文章进行比较,由于对WebMagic学习得还不够,因此有些地方可能是错误地,欢迎指正或板砖伺候。 一、扫描方法的差异 a.WebMagic的扫描 WebMagic采用的是遍地撒网、愿者上勾的方式,怎么解释这个遍地撒网呢? 在进行内容抓取的时候,与事先定义好的处理器中的匹配规则进行匹配,匹配成功则处理之。 把所有的超链接找到并添加到待处理列表中,然后对新找到的链接继续进行处理。 所以WebMagic会把所有的页面都扫描一次,在扫描的过程中进行匹配,匹配上的进行处理。 b.TinySpider的扫描 TinySpider采用的则是抽丝剥茧,精确打击的策略。什么个意思呢? 在进行内容抓取的时候,首先有个入口页面,然后在上面定义了许多Watcher,实际上就是关注点了,只有它关注的点匹配的,才会执行其后续的动作触发,也就是扫描哪些页面或者后续扫描的走向是由程序员完全把控的。 所以TinySpider在扫描的时候,不一定会扫描所有的页面,只扫描自己关心的内容。当然

webmagic的设计机制及原理-如何开发一个Java爬虫

匆匆过客 提交于 2019-12-19 17:53:44
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 此文章是webmagic 0.1.0版的设计手册,后续版本的入门及用户手册请看这里: https://github.com/code4craft/webmagic/blob/master/user-manual.md 之前就有网友在博客里留言,觉得webmagic的实现比较有意思,想要借此研究一下爬虫。最近终于集中精力,花了三天时间,终于写完了这篇文章。之前垂直爬虫写了一年多,webmagic框架写了一个多月,这方面倒是有一些心得,希望对读者有帮助。 webmagic的目标 一般来说,一个爬虫包括几个部分: 页面下载 页面下载是一个爬虫的基础。下载页面之后才能进行其他后续操作。 链接提取 一般爬虫都会有一些初始的种子URL,但是这些URL对于爬虫是远远不够的。爬虫在爬页面的时候,需要不断发现新的链接。 URL管理 最基础的URL管理,就是对已经爬过的URL和没有爬的URL做区分,防止重复爬取。 内容分析和持久化 一般来说,我们最终需要的都不是原始的HTML页面。我们需要对爬到的页面进行分析,转化成结构化的数据,并存储下来。 不同的爬虫,对这几部分的要求是不一样的。 <!--more--> 对于通用型的爬虫,例如搜索引擎蜘蛛,需要指对互联网大部分网页无差别进行抓取。这时候难点就在于页面下载和链接管理上-