我用Java玩爬虫,Search Job Web项目实战,你要一起来吗?

目录

寻职网Search Job Web项目目标

第一阶段

第二阶段

第三阶段

效果展示

什么是爬虫?

使用爬虫要注意什么

我为什么使用Java而不使用Python


寻职网Search Job Web项目目标

使用爬虫实现一个类似于51job一样的找工作的网站,目标是爬取的职业范围比51job更广更全!关注专栏Java爬虫【寻职网项目实战】

第一阶段

  1. 实现爬虫入门demo,爬取网页
  2. 了解爬虫要解决的问题,爬虫的开发规范
  3. HttpClient的使用,包括Get和Post的区别和使用
  4. HttpClient的连接池的使用
  5. 使用Jsoup解析字符串、文件中的Html数据
  6. 使用dom方式查询解析Html
  7. 使用选择器查询解析Html
  8. 了解SKU和SPU的区别
  9. 手把手实战案例

第二阶段

  1. 理论与实战结合学习WebMagic
  2. 了解PageProcessor
  3. 能够使用选择器抽取页面元素
  4. 使用Spider启动爬虫
  5. 使用Site设置爬虫参数
  6. 使用过滤器对url去重
  7. 能够使用和定制Pipeline输出数据

第三阶段

  1. 使用定时任务,定时爬取网页内容
  2. 能够使用工具生成Cron表达式
  3. 网页去重
  4. 使用代理服务器,用代理IP爬取数据
  5. ElasticSearch服务安装和使用以及IK分词器
  6. 能够使用SpringData完成ElasticSearch的增删改查
  7. 爬取的数据使用MySQL存储并导入到索引库
  8. SpringBoot框架
  9. 寻职网项目实战(穿插于各个阶段,完成以上目标,那么你就有一个自己的实用的求职网站了)
  10. 爬虫高阶技术还有什么

效果展示

如果你对爬虫的了解很少或者你是一个小白,那么在进行项目之前你需要了解“爬虫”是什么

什么是爬虫?

简单来讲,爬虫就是一个探测机器,它的基本操作就是模拟人的行为去各个网站溜达,点点按钮,查查数据,或者把看到的信息背回来。就像一只虫子在一幢楼里不知疲倦地爬来爬去。

爬虫的全名叫网络爬虫,简称爬虫。他还有其他的名字,比如网络机器人,网络蜘蛛等等。这个现象在计算机工程里很常见。

爬虫是什么呢?爬虫有简单的爬虫和复杂的爬虫。实际上简单的爬虫是一种脚本。脚本就是粗糙的,但往往非常实用的小程序(一般来说不会超过几千行,有时候也就几百几十行罢了)。比如,你想从CSDN记录某人的博客信息。你一条一条去手写肯定是不现实的。所以就要用爬虫。可以把一个信息类网站上几千条信息一次全部扒下来。然后用语其他功能类查询服务。

使用爬虫要注意什么

Robots协议(爬虫协议)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。该协议是国际互联网界通行的道德规范,虽然没有写入法律,但是每一个爬虫都应该遵守这项协议。robots协议

我为什么使用Java而不使用Python

PHP:PHP是世界是最好的语言,但他天生不是做这个的,而且对多线程、异步支持不是很好,并发处理能力弱。爬虫是工具性程序,对速度和效率要求比较高。

Java:生态圈很完善,是Python爬虫最大的竞争对手。但是Java语言本身很笨重,代码量很大。重构成本比较高,任何修改会导致代码大量改动。爬虫经常要修改采集代码。

C/C++:运行效率是无敌的。但是学习和开发成本高。写个小爬虫程序可能要大半天时间。

Python:语法优美、代码简洁、开发效率高、支持的模块多。相关的HTTP请求模块和HTML解析模块非常丰富。还有Scrapy和Scrapy-redis框架让我们开发爬虫变得异常简单。

因为我擅长的是Java,又不想花精力去学习Python,所以我使用Java语言来写爬虫,如果你也跟我一样,想玩一玩,就一起来吧!

最后,感兴趣的同学可以关注专栏Java爬虫【寻职网项目实战】

原创文章 77 获赞 834 访问量 23万+

猜你喜欢

转载自blog.csdn.net/lyztyycode/article/details/105760284
job