互联网信息的自动获取与推送方法

xiaoxiao2020-10-23  13

互联网信息的自动获取与推送方法
【技术领域】
[0001] 本发明设及捜索引擎领域,具体设及一种可为用户爬取各个学院网站和教务处网 站的通知,并将该些数据同步呈现给用户的互联网信息的自动获取与推送方法。
【背景技术】
[0002] 面对庞大的网络资源,捜索引擎提供了一个口户网站,毫不夸张的说,浏览该个口 户网站的所有用户在任何地点上网都可W捜索到任何自己想捜索的地方。因此它已成为除 了电子邮件W外最多人使用的网上服务。什么是捜索引擎?它是如何工作的?该个词被广 泛的使用在互联网领域,但在不同的地域它的意义是不同的。在美国,捜索引擎通常是指基 于互联网的捜索引擎,他们通过收集网络的数千万到数亿网络机器人程序,每一个字被捜 索引擎收录,也就是我们所说的全文捜索。著名的因特网捜索引擎有Google等。在中国, 捜索引擎通常指基于Web的目录捜索服务或特定网站的捜索服务,该系统是基于一个特定 网站捜索技术的特定标记研究。广义的捜索引擎泛指互联网上提供信息检索服务的工具或 系统,即在互联网上或通过互联网响应用户的捜索请求,返回相应的捜索结果的系统。狭 义上的捜索引擎主要指自动或手动捜索万维网上的资源组织成一个数据库,W网站的形式 提供捜索服务的收集,分析和索引服务,利用网络为用户提供信息服务的体系。简单地说: WWW捜索引擎是一组网络环境的信息检索系统。它通常有两种不同的模式;一个是分类目 录型捜索,互联网资源进行捜集整理,提供不同的资源投入到不同的目录类型,然后分类图 层,用户可W找到他们希望的分类信息层,然后到达目的地,找到自己想要的信息;另一种 是基于关键字检索,用户可W输入各种逻辑组合类型的关键字,捜索引擎按照一定的规则 找到解决该些关键词所需要的资源,然后再反馈给用户包含有关键字的信息,并链接到该 些网站。事实上,捜索引擎就是一个网站,它是专口提供捜索服务的网站,它采用了独特的 方案捜集互联网上的所有信息,帮助人们在信息海洋中捜索到自己需要的信息的网站。
[0003] 快毕业大学生需要时刻关注学校的通知和学院的通知,很多时候并不能保证每天 都能浏览教务处主页或学院主页,该样极有可能会漏掉一些重要的通知,并且要查看该些 通知需要点开多个网页,在该些网页中来回穿梭。如果该些通知和就业信息能在一个网页 上浏览,并且及时的邮件通知或短信通知,那么对于我们来说会方便很多,也不会错过一些 重要信息。

【发明内容】

[0004] 针对上述问题,本发明的目的在于如何提供一种可为用户爬取各个学院网站和教 务处网站的通知,并将该些数据同步呈现给用户的大学通知查询系统。
[0005] 为达到上述目的,本发明采用如下技术方案:
[0006] 一种大学通知查询系统,其特征在于,包括客户端浏览器和服务器,服务器主要由 业务逻辑层、数据爬取层、视图层构成;
[0007] 业务逻辑层将浏览器提交的参数进行处理,生成教务处网站的U化或学院的U化 或毕业生就业网站的u化,并将u化作为参数提交给数据爬取层;数据爬取层W业务逻辑层 提交的U化为参数,对该U化对应的页面进行解析,获取页面的所有通知列表,针对列表中 的每一条通知逐个解析,最后把爬取到的通知信息封装在一个对象数组中,返回给业务逻 辑层;视图层主要有一个静态的HTML页面和二个动态的JSP页面组成,静态的HTML页面负 责提交用户输入的关键字,动态JSP页面显示捜索结果;
[0008] 用户利用客户端浏览器点击教务处或某学院或就业信息时,服务器会获取点击的 关键字,并且提交给教务处网站或学院网站或毕业生就业网站,然后将该=个网站的捜索 结果页的通知信息爬取出,将爬取出的数据经过处理后再动态生成网页呈现给用户。
[0009] 一种互联网信息的自动获取与推送方法,其特征在于,包括如下步骤:
[0010] 一、创建业务逻辑层,业务逻辑层Wrequest对象作为参数,根据request对象获 取用户的请求并返回通知信息给调用层;
[0011] 二、创建数据爬取层,数据爬取层W页面U化作为参数获取通知信息,并将获取到 的通知信息返回给调用层;
[001引 S、创建一个静态的HTML页面和两个动态的JSP页面,静态的HTML页面为系统的 主页,动态的JSP页面显示最新通知列表和具体的通知内容;
[0013] 业务逻辑层将客户端浏览器提交的参数进行处理,生成教务处网站的U化或学院 的U化或毕业生就业网站的U化,并将U化作为参数提交给数据爬取层;数据爬取层W业务 逻辑层提交的U化为参数,对该U化对应的页面进行解析,获取页面的所有通知列表,针对 列表中的每一条通知逐个解析,最后把爬取到的通知信息封装在一个对象数组中,返回给 业务逻辑层;视图层主要有一个静态的HTML页面和二个动态的JSP页面组成,静态的HTML 页面负责提交用户输入的关键字,动态JSP页面显示捜索结果;
[0014]点击教务处或某学院或就业信息时,服务器会获取点击的关键字,并且提交给教 务处网站或学院网站或毕业生就业网站,然后将该=个网站的捜索结果页的通知信息爬取 出,将爬取出的数据经过处理后再动态生成网页呈现给用户。
[0015] 所述步骤一的具体实现如下;①类;GetNotice,该类为业务逻辑层的功能实现 类;②方法;GetNotice化ttpServletRequestrequest),该方法为构造方法,创建对象 时Wrequest对象作为参数,根据request对象获取用户的请求;⑨采用方法public Noticein化化ta[]GetIn化0来获取用户请求的通知信息,并将其作为返回值返回。
[0016] 所述步骤二的具体实现过程如下;①类;Noticein化Get,该类为数据爬取层的功 能实现类;@方法;齡1:;[061]1化661:(5化;[]1肖111'1),此方法为构造方法,创建对象时1^页面的 册L作为参数;⑨方法;publicNoticein化化ta[]GetInfo0,该方法爬取册L对应页面的 通知信息,并将其作为返回值返回。
[0017] 与现有技术相比,本发明的有益效果体现在:
[001引一、本发明能够分别从教务处网页和各个学院网页爬取相关通知信息,通知信息 包括通知主页链接、通知标题、通知发布日期、通知具体内容,可W在同一个页面中同时显 示教务处通知、学院通知和毕业生就业网通知,用户可点击页面超链接查看通知的具体内 容。
[0019] 二、本发可实时爬取,保证了系统爬取到的通知信息的准确度,能够很好应对教务 处、学院和毕业生就业网的更新。
【附图说明】
[0020] 图1为本发明的流程图;
[0021] 图2为本发明的数据流向图。
【具体实施方式】
[0022] 下面结合实施例对本发明作进一步的描述,所描述的实施例仅仅是本发明一部分 实施例,并不是全部的实施例。基于本发明中的实施例,本 领域的普通技术人员在没有做出 创造性劳动前提下所获得的其他所用实施例,都属于本发明的保护范围。
[0023] 实施例一业务逻辑层
[0024] 业务逻辑层的核屯、是将用户提交的信息处理并生成相应网站的U化,将U化提交 给数据爬取层进行数据爬取。业务逻辑层的类叫做GetNotice,它的成员及成员函数见下 表一
[00巧]表一
[0026]
[0027] 函数Getin化0是类GetNotice的核屯、方法,该方法是响应用户请求的,它需要判 断用户的请求时捜索通知还是查看邻页通知的,具体实现如下:用户访问系统的U化格式 为:
[0028] 48. 204. 6:8080/NotificationsQuery/search.jsp?key=网站名 或者
[0029] 48. 204. 6:8080/NotificationsQuery/search.jsp?key=网站名 &page=当前页码&total=通知总页码
[0030] 对于第一种格式是下拉表单提交给系统的捜索请求。第二种格式是用户点击"上 一页"或"下一页"的邻页请求。在格式二中,一定有page参数大于1。在该种情况下,业 务逻辑层会实例化一个化gein化化ta类型的对象pagd)ata,将参数page的值赋给对象的 成员page,将total赋给对象的成员total。业务逻辑层在生成U化的过程中会判断对象 pagd)ata的成员page与total的大小关系,然后生成册L,如果对象pagd)ata的成员page 大于total,不生成U化。如果用户提交的是捜索请求,那么系统会调用Search方法,否则 调用Nei曲bor方法。该两个方法会分别W捜索和邻页的特定的U化结构生成U化,然后提 交给数据爬取层。
[0031] 实施例二业务逻辑层
[0032] 数据爬取层的功能是根据上一层提交的U化获取该页面的通知信息,并且将通知 信息封装在对象数组中返回给上一层。如教务处通知列表的爬取算法。
[0033] 进入到教务处通知页面后,可W直接看到通知列表,但是再该个页面里还有很 多其他的东西,因此数据爬取层要将通知列表从整个页面中分离出来,然后对列表中的 每一个通知逐一解析。将页面中所有该个标签里的对应的超链接过滤出来,得到一个 列表List。类Registryin化Get的Get化ist方法是实现获取捜索页面通知列表的,类 Regist巧InfoGet的成员及简介见表二。
[0034]表二 [00 巧]
[0036] 爬取录用通知列表和爬取实习兼职通知列表的方法为;使用Jsoup选择器选择出 所有的超链接,然后再根据正则表达式去匹配筛选出我们需要的通知列表,该里只是正则 表达式匹配的模式不同。通过对它们HTML文本的分析发现筛选录用通知列表的匹配模式 和筛选实习兼职通知列表的匹配模式和校园招聘会通知列表的模式一样,是"<a\\sclass =\"news\"\\shref= \"shownews. *〉. *</a〉"。
[0037] 实施例系统视图层
[0038] 系统视图层主要由=个web页面构成,一个静态的主页,两个由JSP动态技术生成 的通知结果页。主页主要是采用静态的HTML生成,它里面包括系统logo,系统介绍和一些 图片。
【主权项】
1. 一种互联网信息的自动获取与推送方法,其特征在于,包括如下步骤: 一、 创建业务逻辑层,业务逻辑层以request对象作为参数,根据request对象获取用 户的请求并返回通知信息给调用层; 二、 创建数据爬取层,数据爬取层以页面URL作为参数获取通知信息,并将获取到的通 知信息返回给调用层; 三、 创建一个静态的HTML页面和两个动态的JSP页面,静态的HTML页面为系统的主 页,动态的JSP页面显示最新通知列表和具体的通知内容; 业务逻辑层将客户端浏览器提交的参数进行处理,生成教务处网站的URL或学院的 URL或毕业生就业网站的URL,并将URL作为参数提交给数据爬取层;数据爬取层以业务逻 辑层提交的URL为参数,对该URL对应的页面进行解析,获取页面的所有通知列表,针对列 表中的每一条通知逐个解析,最后把爬取到的通知信息封装在一个对象数组中,返回给业 务逻辑层;视图层主要有一个静态的HTML页面和二个动态的JSP页面组成,静态的HTML页 面负责提交用户输入的关键字,动态JSP页面显示搜索结果; 点击教务处或某学院或就业信息时,服务器会获取点击的关键字,并且提交给教务处 网站或学院网站或毕业生就业网站,然后将这三个网站的搜索结果页的通知信息爬取出, 将爬取出的数据经过处理后再动态生成网页呈现给用户。2. 根据权利要求1所述的互联网信息的自动获取与推送方法,其特征在于,所述 步骤一的具体实现如下:①类:GetNotice,该类为业务逻辑层的功能实现类;②方法: GetNotice (HttpServlet Request request),该方法为构造方法,创建对象时以request对 象作为参数,根据request对象获取用户的请求;③采用方法public NoticeInfoData[] GetInfoO来获取用户请求的通知信息,并将其作为返回值返回。3. 根据权利要求1所述的互联网信息的自动获取与推送方法,其特征在于,所述步骤 二的具体实现过程如下:①类:NoticelnfoGet,该类为数据爬取层的功能实现类;②方法: NoticeInfoGet (String url),此方法为构造方法,仓ij建对象时以页面的URL作为参数;③ 方法:public NoticeInfoData[]GetInfo (),该方法爬取URL对应页面的通知信息,并将其 作为返回值返回。
【专利摘要】本发明公开了一种互联网信息的自动获取与推送方法,属于网络搜索引擎领域,其包括如下步骤:一、创建业务逻辑层,业务逻辑层以request对象作为参数,根据request对象获取用户的请求并返回通知信息给调用层;二、创建数据爬取层,数据爬取层以页面URL作为参数获取通知信息,并将获取到的通知信息返回给调用层;三、创建一个静态的HTML页面和两个动态的JSP页面。本发明能够分别从教务处网页和各个学院网页爬取相关通知信息,通知信息包括通知主页链接、通知标题、通知发布日期、通知具体内容,可以在同一个页面中同时显示教务处通知、学院通知和毕业生就业网通知,用户点击页面超链接便能查看通知的具体内容。
【IPC分类】G06F17/30
【公开号】CN104881501
【申请号】CN201510347642
【发明人】彭德中, 章毅, 吕建成, 张蕾, 张海仙, 桑永胜, 郭际香, 毛华, 陈杰, 陈盈科
【申请人】四川大学
【公开日】2015年9月2日
【申请日】2015年6月19日
转载请注明原文地址:https://www.famiwei.com/read-8138574.html

最新回复(0)