如期而至,继续我们的项目,上次我们配置好了我们的环境  今天呢,我们开始创建我们的项目。

首先 ,启动Eclipse dian点file 创建yi'g一个新的maven项目

注意创建的时候,要钩选这个,而且默认的创建项目的位置是你当初设置的位置,如果你想更改,点击browse 即可更改,在这里呢我选择默认的路径,ran'然后点击next

这里的groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找。
  groupId一般分为多个段,这里我只说两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等许多,其中org为非营利组织,com为商业组织。举个apache公司的tomcat项目例子:这个项目的groupId是org.apache,它的域是org(因为tomcat是非营利项目),公司名称是apache,artigactId是tomcat。
  比如我创建一个项目,我一般会将groupId设置为cn.lyh,cn表示域为中国,lyh是我个人姓名缩写,artifactId设置为ZhenaiSpider,表示你这个项目的名称是ZhenaiSpider,依照这个设置,你的包结构最好是cn.lyh.ZhenaiSpider打头的,如果有个包叫single,它的全路径就是cn.lyh.ZhenaiSpider.single

设置完成之后我们的maven项目就算搭建好了 ,接下来我们会看到一个pom.xml 文件,打开之后是这样的

我们需要去http://mvnrepository.com/ 这个网站去找我们所需要的依赖 我们不会一次性导入所有依赖 只有在需要的时候才会去导入,

接下来呢 我们要用到的技术是HTTP 协议+爬虫(jsoup - HTML) 当然了  为了提高效率我们用的是多线程去爬取数据(关于Java的多线程 可参考其他帖子,这里就不一一赘述了)

关于Http协议:

HTTP协议其实就是用来定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端。HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求报文,请求报文包含请求的方法、URL、协议版本、请求头部和请求数据。服务器以一个状态行作为响应,响应的内容包括协议的版本、成功或者错误代码、服务器信息、响应头部和响应数据。

简单的来说 在浏览器地址栏键入URL,点击链接之后会经历以下流程

1、浏览器向 DNS 服务器请求解析该 URL 中的域名所对应的 IP 地址;

2、解析出 IP 地址后,根据该 IP 地址和默认端口 80,和服务器建立TCP连接;

3、浏览器发出读取文件(URL 中域名后面部分对应的文件)的HTTP 请求,该请求报文作为 TCP 三次握手的第三个报文的数据发送给服务器;

4、服务器对浏览器请求作出响应,并把对应的 html 文本发送给浏览器;

5、释放 TCP连接;

6、浏览器将该 html 文本并显示内容;  

Jsoup :

所谓的爬虫,简单的来说 一个网页 ,就是一个文本文件,所谓的爬虫就是一个利用解析器,把我们所需要的信息从网页中拿出来 并把这些信息保存到本地 或者写到数据库里。而jsoup就是Java的 一个强大的Html解析器,它可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。而我们可以去打开浏览器,而在我们的项目中要用到jsoup  我们需要去找依赖并下载下来,打开网站搜索jsoup

第一个就是 然后我用的是最新的1.11.3

点击你所需要的版本

分析url:

通过分析,其实我们可以发现,每个网站的url 都是有规律的 ,如图

然后我们用 Java去模拟 去请求

请求完成之后,剩下的工作就是通过返回的字符串来进行对文本的解析

这时候我们就要通过强大的jsoup去进行解析

首先我们要知道 在浏览器中 我们是可以看到网页的源码的,在浏览器中按f12 即可进入  或者直接鼠标右键 会出来查看源代码,但推荐用前者

例如:

我们要通过网页的源代码去拿wo'm我么所需要的数据,比如性别,是否结过婚,年龄,是否购车,是否有房,学历情况,收入等等一系列信息

我们从网页源码中可以发现 id 是放在这儿的  ,然后我们 用 select 方法 拿出 ID 然后在用.text() 方法拿到值  这样我们就 获取到了这个用户的id ,利用此方法我们可以拿到这个页面的任何信息

下面这个截图只是个参考 大家要去自己分析看看 是不是这样,试试自己是否能够分析出来想要的结果

这样我们的的爬虫基本上就结束了,下次我将会wei为大家分享 如何将获取到的的数据保存到Mysql 数据库中 然后为大家介绍制做报表的神器Echarts 本次分享就先到这儿,若文中有什么不足的地方希望大家可以在评论区进行指点。大家可以加关注,继续看我下次的分享哦

零基础完成珍爱网项目 Java+MySQL+echarts (ZhenaiSpider+ZhenaiWeb)(二)相关推荐

  1. 零基础完成珍爱网项目 Java+MySQL+echarts (ZhenaiSpider+ZhenaiWeb)(五)

    全国的单身人士的分布 进行报表分析 首先要导入地图的js包 我放到了 百度网盘上 大家下载下来之后 解压放到assert文件夹下 即可 https://pan.baidu.com/s/1TPB7pze ...

  2. 零基础完成珍爱网项目 Java+MySQL+echarts (ZhenaiSpider+ZhenaiWeb)(四)

    上次我们的爬虫已经完成了 接下来呢 就是我们的报表. 我们用的是网页形式来展示,所以呢我们需要搭建一个本地的服务器.我们使用的是tomcat 1,下载与安装tomacat http://to进入官网m ...

  3. 零基础完成珍爱网项目 Java+MySQL+echarts (ZhenaiSpider+ZhenaiWeb)(三)

    继续我们的项目, 上次之后我们基本上完成了数据的获取(即爬虫),接下来呢就是如何去保存这些数据,有两种方式,一种呢是以文本形式保存到本地,第二种是就是保存到数据库,而我们呢选择后者. Mysql 1, ...

  4. 零基础完成珍爱网项目 Java+MySQL+echarts (ZhenaiSpider+ZhenaiWeb)(一)

    这个项目呢 主要分为两个部分 爬虫(Spider)和Web两方面(web主要是进行数据分析做出报表是数据更可观) 一.  进行jdk安装及环境变量的配置 由于是基于java的项目 所以先进行jdk的相 ...

  5. 零基础的人怎么学习Java

    编程语言Java,已经21岁了.从1995年诞生以来,就一直活跃于企业中,名企应用天猫,百度,知乎......都是Java语言编写,就连现在使用广泛的XMind也是Java编写的.Java应用的广泛已 ...

  6. 零基础如何选择适合的Java培训课程

    很多人都想要学习java技术,但是害怕自己是零基础学不好,所以想要找专业的java培训机构进行学习,但是零基础如何选择适合的Java培训课程成了他们比较头疼的事情,下面小编就为大家做下详细的介绍. ​ ...

  7. 零基础 Amazon Web Services (AWS) 入门教程图文版(二)

    上一篇讲到,主机正常运转了.但是此时如果直接访问公网IP是打不开网页的,因为主机上没有搭建Web服务器环境,防火墙也没有开放80端口,并且我们没有上传任何网页文件.所以这一篇主要介绍服务器环境的搭建. ...

  8. 取得数组下标_《零基础C++入门教程》——(8)搞定二维数组与循环嵌套

    一.学习目标 了解二维数组的使用方法 了解循环嵌套的使用方法 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<零基础看得懂的C语言入门教程>--(二) ...

  9. 2023年最新最全uniCloud入门学习,零基础入门到实战项目 uni-admin打造uniapp网页后端 微信支付宝抖音小程序后端 unicloud数据后台快速打造uniapp小程序项目

    今天开始带着大家一起零基础学习uniCloud,在下面的课程中我们就简称uniCloud为cloud吧.我这里从零基础开始教大家,后面可以带大家简单的做一个实战项目.所以不用担心自己没有基础,跟着石头 ...

最新文章

  1. python 学习笔记 5 -- 文件输入输出
  2. windows的php如何安装目录结构,禅道的目录结构
  3. 魅蓝s6启动android密码_魅蓝s6怎么恢复出厂设置?忘记密码怎么办
  4. 小米2s自带rec刷root_刷Magisk模块开机卡Logo了怎么办?两种方法教你轻松解决
  5. php项目邮件连接无效,完美解决wordpress邮件链接无效的问题
  6. 【李宏毅2020 ML/DL】补充:Structured Learning: Introduction Structured Linear Model
  7. 用eclipse调用远程webservice生成客户端代码
  8. php data取年月,PHP-date函数 年、月、日参数详解
  9. C语言调用多元函数,遗传算法C语言源代码(一元函数和二元函数)
  10. C语言入门递归算法——汉诺塔(简单易懂,最后还有汉诺塔游戏)
  11. VC版学生成绩管理系统
  12. 进入网站后台,提示HTTP错误404.0-NOtFound
  13. 2022年海外有哪些直播带货平台?直播带货要怎么做?
  14. selenium缩放浏览器
  15. 医美面膜商城小程序开发,助力企业数字化转型
  16. macOS安装homebrew cask 问题解决办法
  17. 自然图像抠图/视频抠像技术发展情况梳理
  18. ACM-ICPC 常用算法刷题网站整理
  19. 【UE4】材质编辑器教程笔记整理
  20. Cargo更换国内源

热门文章

  1. 外贸SEO应该怎样做?
  2. Mathematica 多个积分区间
  3. ajax获得input的传值,ajax传值给controller,controller提取传过来的值?
  4. 青少年python系列 27.turtle库绘制一个四叶花瓣
  5. K8S-SRIOV 及 multus CNI 安装
  6. 小程序开发:未找到 app.json 中的定义的 pages “pages/index/index“ 对应的 WXML 文件
  7. react-native ImageBackground图片被android键盘顶飞了
  8. 人脸检测算法MTCNN
  9. Android 加载gif图,Glide
  10. word2vec 介绍