这几日一直在研究Java爬虫,经历了入坑又爬坑的感受,在知乎找Java爬虫框架,找到了一款心仪的框架,并且是国人开发,浏览了文档说明手册,感受挺好上手,支持正则、jQuery、XPATH选择语法,本身好借鉴之前使用Python Scrapy框架的经验,一顿心里狂喜以后,开始了正式上手Java爬虫的计划,阅读到这里,尴尬的事情出现了。git
Maven是个啥?学Java的时候怎么没有据说过?算了,搞吧,本身学习能力这么强应该没啥大问题,就在慕课网里找到了课程刷了起来。web
看了一遍,只知道Maven是干什么,怎么用是一点都不懂,在知乎里又搜了Maven,看到有人说Maven是如何如何的了不得,但是本身丝毫没有感到,就知道Maven的入门门槛有点高,通常课程看一遍就能明白是个啥以及大体怎么作了,可是Maven这个课程是前先后后看了好多遍,还要边看边作便理解才能慢慢体会到其中的强大!框架
Maven能够干什么?若是接触过Python,学习了Maven以后发现它真的很像Pip,把别人造的轮子经过很轻松的方式就能够为你所用,学习Maven以前,各类Jar包都是独立存在的,学过Maven以后各类Jar包都能和你产生关系,只须要喊一声我要使用哪一个公司的哪一个版本的工具jar包,就能够用了,不用处处找Jar包了,依赖关系也轻松解决,jar包的使用能够精确的控制。工具
若是还没听懂,那来一个更简单的例子,电脑下载软件须要到各个软件公司的官网上去下载,没有统一的“市场”去管理,致使找个软件可能要费不少波折,苹果手机的App Store统一了苹果手机应用的下载和更新,全部苹果应用都汇总在App Store,全部里面的应用很全面,每一个应用但按照规范定义版本号,经过App Store能够管理应用的更新,咱们使用的时候可能浑然不知,可是想一想若是没有这样的方式,不少简单的需求处理起来会变得复杂的不少,安卓早期也是如此。学习
Maven既然这么强大,就来小窥一下。spa
按照上面手册说明的来。在本身的项目(已有项目或者新建一个)中添加如下坐标便可:3d
<dependency>
<groupId>us.codecraft</groupId>
<artifactId>webmagic-core</artifactId>
<version>0.7.3</version>
</dependency>
<dependency>
<groupId>us.codecraft</groupId>
<artifactId>webmagic-extension</artifactId>
<version>0.7.3</version>
</dependency>
复制代码
刚开始的时候鬼知道这什么意思哦,其实就是使用Maven定义的方式管理项目依赖。笔者使用的是IDEA集成开发环境,全部不少步骤省略了,要真正掌握Maven仍是须要都明白才行,这里就不知一一讲解了。code
粘贴进去,而后神奇的事情就会发生,哈哈哈,不买关子了,框架相关的依赖Jar包自动给咱们添加好了。cdn
看到这么多数量的依赖,想一想没有Maven的话,一个个去找,得多麻烦,有Maven后只是复制粘贴的事情。真的是工欲善其事必先利其器,好工具能够大大提高工做效率。xml
前先后后由于爬虫去学了Maven,而后再Maven折腾了至少两天时间,而后又回头研究爬虫,真正在爬虫上花的时候并很少,基本对着手册一顿操做操做就能够了。此次也算收货不小,像是以前折腾git同样,不会的时候以为没有你难道就不行了,会了以后哈哈哈,这不就是典型的真香定律嘛,哈哈哈哈。如今沉迷GitHub,估计又要沉迷会Maven了,大神造的轮子都在上面随便用呢。
学习这事不能放弃,死磕到底就好了(各位看官放下手中的砖头,具体状况具体来就好~)。