爬虫对德州市企业信息采集系统
摘 要
随着信息技术的快速发展,大数据已经成为现代社会的重要资源。在德州市,为了更好地管理和利用企业信息,德州市政府推出了一套先进的企业信息采集系统。该系统采用了先进的爬虫技术,能够高效地采集、整理和分析各类企业信息,为政府决策和企业发展提供有力支持。
本文将基于Python编程语言和Django框架,以及Mysql关系型数据库管理系统,设计和实现一个企业信息采集系统。通过企业信息采集系统,可以实现对企业信息采集系统的全面管理和监控。系统包括后台首页、系统用户、企业招聘管理、简历投递管理、企业类型管理、企业地址管理、企业规模管理、系统管理、通知公告管理等详细信息,同时,该系统还能够对采集到的信息进行自动分类和整理,形成清晰、易用的数据报表,方便用户进行查看和分析。
通过这套企业信息采集系统,德州市政府能够全面掌握辖区内企业的基本情况和发展动态,为政策制定和决策提供有力支持。同时,该系统还能够为企业提供更加精准和及时的市场信息和政策指导,帮助企业更好地把握市场机遇和发展方向。也为政府和企业提供了高效、便捷的信息服务,为德州市的经济发展和社会进步注入了新的动力。
关键词:爬虫对德州市企业信息采集系统;Django框架;Mysql数据库
Crawler to Dezhou city enterprise information collection system
Abstract
With the rapid development of information technology, big data has become an important resource in the modern society. In Dezhou city, in order to better manage and use the enterprise information, the Dezhou municipal government has launched a set of advanced enterprise information collection system. The system adopts advanced crawler technology, which can efficiently collect, sort out and analyze all kinds of enterprise information, and provide strong support for government decision-making and enterprise development.
This paper will design and implement an enterprise information acquisition system based on Python programming language and Django framework, and Mysql relational database management system. Through the enterprise information collection system, the comprehensive management and monitoring of the enterprise information collection system can be realized. System includes the background home page, users, enterprise recruitment management, resume delivery management, enterprise type management, enterprise address management, enterprise scale management, system management, announcement management details, at the same time, the system also to collect information automatic classification and sorting, form a clear, easy to use data report, convenient for users to view and analysis.
Through this enterprise information collection system, Dezhou municipal government can fully grasp the basic situation and development trends of enterprises within its jurisdiction, and provide strong support for policy making and decision-making. At the same time, the system can also provide enterprises with more accurate and timely market information and policy guidance, to help enterprises to better grasp the market opportunities and development direction. It also provides efficient and convenient information services for the government and enterprises, and injects new impetus into the economic development and social progress of Dezhou city.
Keywords: crawler to Dezhou city enterprise information collection system; Django framework; Mysql database
目 录
第1章 绪论
1.1 研究背景与意义
随着信息技术的迅猛发展,大数据已经成为了现代社会不可或缺的一部分。在这样的背景下,企业信息采集系统作为大数据应用的重要领域之一,正受到越来越多的关注。德州市作为中国经济的重要增长点,其企业信息采集系统的建设与发展对于推动当地经济转型升级、提升城市竞争力具有重要意义。
一、研究背景
德州市作为山东省的重要城市之一,其经济实力不断增强,企业数量逐年增长。然而,随着市场竞争的加剧,企业面临着越来越多的挑战。为了更好地了解市场动态、把握发展机遇,企业需要掌握大量、准确、及时的企业信息。然而,传统的手工采集方式效率低下,难以满足企业的需求。因此,开发一款高效、准确的企业信息采集系统成为了德州市的迫切需求。
爬虫技术作为一种自动化采集信息的技术手段,具有速度快、效率高、准确性高等优点。通过爬虫技术,可以实现对互联网上的企业信息进行自动化抓取、处理和分析,为企业提供全面、准确、及时的市场信息,帮助企业更好地把握市场动态、制定发展策略。
二、研究意义
1. 提升企业竞争力:通过爬虫技术,企业可以更加全面、准确地了解竞争对手的情况,包括其产品、服务、营销策略等,从而制定更加有效的竞争策略,提升企业竞争力。
2. 促进产业升级:企业信息采集系统的建设不仅可以为企业提供市场信息,还可以为政府提供产业发展数据支持。通过对企业信息的分析和挖掘,政府可以更加准确地把握产业发展趋势,制定更加科学的产业发展政策,推动德州市产业升级。
3. 提高政府监管效率:企业信息采集系统可以为政府监管部门提供企业数据支持,帮助监管部门更加准确地了解企业情况,提高监管效率。同时,通过对企业信息的分析,监管部门还可以发现潜在的市场风险和问题,及时采取措施进行防范和化解。
综上所述,爬虫对德州市企业信息采集系统的研究不仅具有重要的理论价值,还具有广阔的应用前景。通过开发高效、准确的企业信息采集系统,可以为企业和政府提供更加全面、准确的市场信息,推动德州市经济转型升级、提升城市竞争力。同时,随着技术的不断发展和完善,爬虫技术将在更多领域得到应用和推广,为社会的发展和进步做出更大的贡献。
1.2 开发现状
爬虫对德州市企业信息采集系统开发现状的影响是深远的。随着信息技术的快速发展,越来越多的企业开始重视信息化建设,而企业信息采集系统作为信息化建设的重要组成部分,其重要性也日益凸显。在这一背景下,爬虫技术成为了企业信息采集系统开发的重要工具之一。
在德州市,越来越多的企业开始利用爬虫技术来开发企业信息采集系统。这些系统可以通过自动化抓取互联网上的企业信息,实现对企业信息的快速获取、整理和分析,从而提高企业的信息化水平和市场竞争力。
然而,随着爬虫技术的广泛应用,也带来了一些问题和挑战。首先,爬虫技术的滥用可能导致企业信息泄露和隐私侵犯,给企业带来不必要的损失。其次,爬虫技术的不规范使用可能导致数据采集不准确、不完整,从而影响企业的决策和业务发展。
因此,对于德州市的企业来说,要想更好地利用爬虫技术开发企业信息采集系统,需要加强技术研发和人才培养,提高爬虫技术的使用水平和规范性。同时,也需要加强法律法规的制定和执行,保护企业的合法权益,推动爬虫技术的健康发展。
总之,爬虫技术对德州市企业信息采集系统开发现状的影响是显而易见的。只有加强技术研发和人才培养,提高使用水平和规范性,才能更好地发挥爬虫技术在企业信息采集系统中的作用,推动企业的信息化建设和业务发展。
第2章相关技术介绍
2.1 Django框架介绍
Django是高水准的Python编程语言驱动的一个开源模型.视图,控制器风格的Web应用程序框架,它起源于开源社区。使用这种架构,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序。这也正是OpenStack的Horizon组件采用这种架构进行设计的主要原因。另外,在Django框架中,还包含许多功能强大的第三方插件,使得Django具有较强的可扩展性。Django 项目源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来。Django 框架的核心组件有:
2.3.1 用于创建模型的对象关系映射;
2.3.2 为最终用户设计较好的管理界面;
2.3.3 URL 设计;
2.3.4 设计者友好的模板语言;
2.3.5 缓存系统。
Django(发音:[`dʒæŋɡəʊ]) 是用python语言写的开源web开发框架(open source web framework),它鼓励快速开发,并遵循MVC设计。Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。
Django 根据比利时的爵士音乐家Django Reinhardt命名,他是一个吉普赛人,主要以演奏吉它为主,还演奏过小提琴等。
由于Django在近年来的迅速发展,应用越来越广泛,被著名IT开发杂志SD Times评选为2013 SD Times 100,位列“API、库和框架”分类第6位,被认为是该领域的佼佼者。
JSP可以放在html里使用,也可以独自使用,它同时也具备有很多种优点,可以讲,Web脚本技术的先驱是JSP。现代编程语言(像C,python和Perl等)的一些最好的特点都融合在JSP里,Web服务器里的一些配置标准是由JSP、Tomcat和数据库等的组合在一起的。
2.2 MySQL数据库
MySQL经过多次的更新,功能层面已经非常的丰富和完善了,从MySQL4版本到5版本进行了比较大的更新,在商业的实际使用中取得了很好的实际应用效果。最新版本的MySQL支持对信息的压缩,同时还能进行加密能更好的满足对信息安全性的需求。同时经过系统的多次更新,数据库自身的镜像功能也得到了很大的增强,运行的流畅度和易用性方面有了不小的进步,驱动的使用和创建也更加的高效快捷。最大的变动还是进行了空间信息的显示优化,能更加方便的在应用地图上进行坐标的标注和运算。强大的备份功能也保证了用户使用的过程会更加安心,同时支持的Office特性还支持用户的自行安装和使用。在信息的显示形式上也进行了不小的更新,增加了两个非常实用的显示区,一个是信息区,对表格和文字进行了分类处理,界面的显示更加清爽和具体。第二是仪表的信息控件,能在仪表信息区进行信息的显示,同时还能进行多个信息的比对,为用户的实际使用带来了很大的便捷。
B/S架构采取浏览器请求,服务器响应的工作模式。
用户可以通过浏览器去访问Internet上由Web服务器产生的文本、数据、图片、动画、视频点播和声音等信息;
而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中;
从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。
在 B/S 模式中,用户是通过浏览器针对许多分布于网络上的服务器进行请求访问的,浏览器的请求通过服务器进行处理,并将处理结果以及相应的信息返回给浏览器,其他的数据加工、请求全部都是由Web Server完成的。通过该框架结构以及植入于操作系统内部的浏览器,该结构已经成为了当今软件应用的主流结构模式。
2.4 爬虫技术
爬虫技术是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。这种技术通常被用于搜索引擎、数据分析、数据挖掘等领域。爬虫系统通常由HTML网页下载器、网页解析器、数据存储器和数据处理器等部分组成。
HTML网页下载器是爬虫系统的核心部件之一,其主要任务是下载网页。在Python中,常用的库有urllib库和requests库。这些库可以实现HTML请求,从而获取网页内容。
网页解析器是另一个关键组件,它负责对下载的网页进行解析,提取需要的信息。网页解析的主要工具有正则表达式、lxml库等。正则表达式可以使用预定义的模式去匹配一类具有相同特征的字符串,可以快速、准确的完成复杂的查找、替换等处理要求。lxml库则使用Xpath语法,同样具有较高的解析效率。
数据存储器和数据处理器则负责将解析得到的数据进行存储和处理。这些数据可以用于进一步的分析、挖掘或者作为其他应用的输入。
爬虫技术的产生背景是随着网络的迅速发展,万维网成为大量信息的载体,如何有效地提取并利用这些信息成为一个巨大的挑战。搜索引擎作为一个辅助人们检索信息的工具,需要大量的数据抓取和处理能力,因此爬虫技术成为其不可或缺的一部分。
总的来说,爬虫技术是一种强大的工具,可以帮助我们有效地获取和利用网络上的大量信息。但同时,也需要注意遵守相关的法律法规和道德规范,避免滥用爬虫技术。
第3章 系统分析
3.1 可行性分析
开发任何一个系统,都要对其可行性进行分析,对其时间和资源上的限制进行考虑,这样可以减少系统开发的风险。同时,分析之后不仅能够合理的运用人力,还能在各方面资源的消耗上得到节省。下面就对技术、经济和社会三个方面来介绍。
实用性方面,本次设计的主要任务是在德州市企业信息采集系统后台首页、系统用户、企业招聘管理、简历投递管理、企业类型管理、企业地址管理、企业规模管理、系统管理、通知公告管理理等,符合当前潮流的发展。从用户角度出发,同时也考虑系统运营成本和人力资源,采用网络上的便捷方式,实现线上业务,使得业务流程更系统,也更方便用户的体验,比较实用。
经济性方面,由于本课题中设计的德州市企业信息采集系统管理的主要目的是为了能够更加方便及快捷的进行企业人事的查询管理及检索服务,也就是能够可以直接投入使用的信息化软件。系统的主要成本主要是集中在对使用数据后期继续维护及其管理更新这个操作上。但是一旦系统投入到实际的运行及使用之后就能够很好的提高信息查询检索的效率,同时也需要有效的保证查询者的信息方面的安全性,同时这个德州市企业信息采集系统与系统所带来的实际应用方面的价值是远远的超过了实际系统进行开发与维护方面的成本,因此,从经济上来说开发这个软件是可行的。
3.2 系统功能分析
爬虫对德州市企业信息采集系统提供了一系列功能,包括普通用户和管理员两个角色
普通用户模块:
- 首页:用户可以在此页面可以查看所有的网站信息。
- 通知公告:用户可以在此页面查看所有的通知公告信息。
- 企业招聘:用户可以在此页面查看所有的企业招聘信息,如企业名称、企业类型、企业规模等信息。
- 我的账户:用户在此页面可以操作个人基本信息和个人中心信息,包括
个人首页、简历投递等。
管理员用户模块:
- 后台首页:管理员可以在后台首页上操作所有的系统功能。
- 系统用户:管理员可以在此页面对管理员和普通用户进行增删改查维护等操作。
- 企业招聘管理:管理员可以在此页面对企业招聘管理进行更新维护,并对其增删改查的操作。
- 简历投递管理:管理员可以在此页面对简历投递管理列表进行更新维护,如个人简历、用户姓名、个人描述、投递时间等操作。
- 企业类型管理:管理员可以在此页面对企业类型管理进行更新维护,也可以添加企业规模、薪资、发布人、发布职业等操作。
- 企业地址管理:管理员可以在此页面对企业地址管理进行更新维护,也可以添加企业类型、企业名称、发布人、发布时间、薪资等操作。
- 企业规模管理:管理员可以在此页面对企业规模管理进行更新维护,并对其进行增删改查的操作。
- 系统管理:管理员可以在此页面对前台发布的轮播图进行增删改查的操作。
- 通知公告管理:管理员可以在此页面对前台发布的通知公告管理进行更新维护,并对其增删改查的操作。
3.3 系统用例分析
德州市企业信息采集系统的功能主要分为普通用户根据自己的需求进行登录进行首页、通知公告、企业招聘、我的账户、个人中心(个人首页、简历投递)等。
普通用户用例图如下所示。
图3-1 普通用户用例图
管理员用例图如下所示。
图3-2 管理员用例图
3.4 非功能需求分析
爬虫对德州市企业信息采集系统的非功能性需求比如爬虫对德州市企业信息采集系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下3-3表格中:
表3-3 爬虫对德州市企业信息采集系统非功能需求表
安全性 | 主要指爬虫对德州市企业信息采集系统数据库的安装,数据库的使用和密码的设定必须合乎规范。 |
可靠性 | 可靠性是指爬虫对德州市企业信息采集系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。 |
性能 | 性能是影响爬虫对德州市企业信息采集系统占据市场的必要条件,所以性能最好要佳才好。 |
可扩展性 | 比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。 |
易用性 | 用户只要跟着爬虫对德州市企业信息采集系统的页面展示内容进行操作,就可以了。 |
可维护性 | 爬虫对德州市企业信息采集系统开发的可维护性是非常重要的,经过测试,可维护性没有问题 |
3.5 安全性需求分析
3.5.1 系统的安全性
安全性对每一个系统来说都是非常重要的。安全性很好的系统可以保护企业的信息和用户的信息不被窃取。提高系统的安全性不仅是对用户的负责,更是对企业的负责。尤其针对于学生课程考试与系统来说,必须要有很好的安全性来保障整个系统。
系统具有对使用者有权限控制,针对角色的不通限制使用者的权限,以此来确保系统的安全性。
3.5.2 数据的安全性
数据库中的数据是从外界输入的,当数据的输入时,由于种种原因,输入的数据会无效,或者是脏数据。因此,怎样保证输入的数据符合规定,成为了数据库系统,尤其是多用户的关系数据库系统首要关注的问题。
因此,在写入数据库时,要保证数据完整性、正确性和一致性。
3.6 开发系统流程设计
系统流程的分析是通过调查系统所涉及问题的识别、可行性、可操作性、系统分析处理能力等具体环节来调节、整理系统的设计方案以确保系统能达到理想的状态。这些操作都要从注册、登录处着眼进行一系列的流程测试保证数据库的完整,从而把控系统所涉及信息管理的安全、保证信息输入、输出正常转换。然后,通过实际操作完成流程图的绘制工作。
德州市企业信息采集系统的开发对管理模块和系统使用的数据库进行分析,编写代码,系统测试,如下图所示。
图3-4 开发系统流程图
第4章 系统设计
4.1 系统总体设计
德州市企业信息采集系统总体分为普通用户模块和后台管理员模块。
两个模块表现上是分别独立存在,但是访问的数据库是一样的。每一个模块的功能都是根据先前完成的需求分析,并查阅相关资料后整理制作的。
综上所述,系统功能结构图如下图所示。
图4-2 系统功能结构图
4.2 数据库设计
数据库的设计承载者系统的各种数据,在建立数据库的时候,主要是数据库模型的设计以及各个数据库表的设计两部分。
4.2.1 数据库概念设计
根据前面的数据流程图,结合系统的功能模块设计,设计出符合系统的各信息实体。
系统ER图如下图所示。
图4-3 系统ER图
4.2.2 数据库逻辑结构设计
将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。
表access_token (登陆访问时长)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | enterprise_address_id | int | 10 | 0 | N | Y | 企业地址ID | |
2 | title | varchar | 64 | 0 | Y | N | 标题 | |
3 | salary | varchar | 64 | 0 | Y | N | 薪资 | |
4 | publisher | varchar | 64 | 0 | Y | N | 发布人 | |
5 | position_of_publisher | varchar | 64 | 0 | Y | N | 发布人职位 | |
6 | company_name | varchar | 64 | 0 | Y | N | 公司名称 | |
7 | enterprise_type | varchar | 64 | 0 | Y | N | 企业类型 | |
8 | scale | varchar | 64 | 0 | Y | N | 规模 | |
9 | label | text | 65535 | 0 | Y | N | 标签 | |
10 | address | varchar | 64 | 0 | Y | N | 地址 | |
11 | work_experience | varchar | 64 | 0 | Y | N | 工作经验 | |
12 | educational_background | varchar | 64 | 0 | Y | N | 学历 | |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表enterprise_recruitment (企业招聘)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | enterprise_recruitment_id | int | 10 | 0 | N | Y | 企业招聘ID | |
2 | title | varchar | 64 | 0 | Y | N | 标题 | |
3 | salary | varchar | 64 | 0 | Y | N | 薪资 | |
4 | publisher | varchar | 64 | 0 | Y | N | 发布人 | |
5 | position_of_publisher | varchar | 64 | 0 | Y | N | 发布人职位 | |
6 | company_name | varchar | 64 | 0 | Y | N | 公司名称 | |
7 | enterprise_type | varchar | 64 | 0 | Y | N | 企业类型 | |
8 | scale | varchar | 64 | 0 | Y | N | 规模 | |
9 | label | text | 65535 | 0 | Y | N | 标签 | |
10 | address | varchar | 64 | 0 | Y | N | 地址 | |
11 | work_experience | varchar | 64 | 0 | Y | N | 工作经验 | |
12 | educational_background | varchar | 64 | 0 | Y | N | 学历 | |
13 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | enterprise_scale_id | int | 10 | 0 | N | Y | 企业规模ID | |
2 | title | varchar | 64 | 0 | Y | N | 标题 | |
3 | salary | varchar | 64 | 0 | Y | N | 薪资 | |
4 | publisher | varchar | 64 | 0 | Y | N | 发布人 | |
5 | position_of_publisher | varchar | 64 | 0 | Y | N | 发布人职位 | |
6 | company_name | varchar | 64 | 0 | Y | N | 公司名称 | |
7 | enterprise_type | varchar | 64 | 0 | Y | N | 企业类型 | |
8 | scale | varchar | 64 | 0 | Y | N | 规模 | |
9 | label | text | 65535 | 0 | Y | N | 标签 | |
10 | address | varchar | 64 | 0 | Y | N | 地址 | |
11 | work_experience | varchar | 64 | 0 | Y | N | 工作经验 | |
12 | educational_background | varchar | 64 | 0 | Y | N | 学历 | |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | enterprise_type_id | int | 10 | 0 | N | Y | 企业类型ID | |
2 | title | varchar | 64 | 0 | Y | N | 标题 | |
3 | salary | varchar | 64 | 0 | Y | N | 薪资 | |
4 | publisher | varchar | 64 | 0 | Y | N | 发布人 | |
5 | position_of_publisher | varchar | 64 | 0 | Y | N | 发布人职位 | |
6 | company_name | varchar | 64 | 0 | Y | N | 公司名称 | |
7 | enterprise_type | varchar | 64 | 0 | Y | N | 企业类型 | |
8 | scale | varchar | 64 | 0 | Y | N | 规模 | |
9 | label | text | 65535 | 0 | Y | N | 标签 | |
10 | address | varchar | 64 | 0 | Y | N | 地址 | |
11 | work_experience | varchar | 64 | 0 | Y | N | 工作经验 | |
12 | educational_background | varchar | 64 | 0 | Y | N | 学历 | |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | regular_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | contact_information | varchar | 64 | 0 | Y | N | 联系方式 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | resume_submission_id | int | 10 | 0 | N | Y | 简历投递ID | |
2 | regular_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | title | varchar | 64 | 0 | Y | N | 标题 | |
5 | delivery_time | datetime | 19 | 0 | Y | N | 投递时间 | |
6 | personal_resume | varchar | 255 | 0 | Y | N | 个人简历 | |
7 | personal_description | text | 65535 | 0 | Y | N | 个人描述 | |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
第5章 系统模块设计
5.1 用户模块
5.1.1 用户登录模块
主要由两部分组成,登录前的登录界面以及登录后的用户功能界面。登录界面,要求用户输入用户名和密码,当用户名和密码其中一个输入为空时,给出提示“用户名,密码不能为空”。获取用户名和密码后到数据库中查找,如果用户名存在,以及对应的密码正确,则登录成功,否则登录失败。登录失败后给出提示,并把焦点停在文本框中。登录成功后将该次会话的全局变量username设置为用户名。登录成功后进入会员的功能模块,主要有会员基本信息修改,已经发布考试信息管理,发布信息,和退出功能。退出功能是清除全局变量username的值,并跳回到首页。
登录流程图如下图所示。
图5-1用户登录流程图
用户登录界面如下图所示。
图5-2用户登录界面
5.1.2 注册用户模块
注册后的用户可以通过自己的用户名和密码进行登录,在用户填写好自己的用户名和密码信息并点击“登录”按钮后,将会先验证是否有非空数据,再验证填写的用户信息和数据库中保存的是否一致,一致后将会登录成功,登录成功后将会在左上角上显示用户信息;否则将会提示相应错误信息,用户登录界面如下图所示:
图5-3注册用户界面
5.1.3 企业招聘模块
用户可以在此页面对企业招聘列表信息查询到所有的企业招聘信息,并对相应的企业投简历,企业招聘界面如下图所示。
图5-3企业招聘界面
5.2 管理员模块
5.2.1 后台首页模块
后台首页:管理员可在后台首页模块查看所有的系统信息和企业规模统计图、企业地址统计图、企业类型统计图。后台首页界面如下图所示。
5.2.2 系统管理模块
系统管理:管理员可以在此页面对前台发布的轮播图进行更新维护操作,并对其进行增删改查的操作。
系统管理界面如下图所示。
图5-5系统管理界面
5.2.3 通知公告管理模
通知公告管理:管理员可以对前台发布的 通知公告信息进行更新维护操作,并对其增删改查。通知公告管理界面如下图:
图5-6通知公告管理界面
第6章 系统测试
6.1 测试目的
对任何系统而言,测试都是必不可少的环节,测试可以发现系统存在的很多问题,所有的软件上线之前,都应该进行充足的测试之后才能保证上线后不会Bug频发,或者是功能不满足需求等问题的发生。下面分别从单元测试,功能测试和用例测试来对系统进行测试以保证系统的稳定性和可靠性。
6.2 功能测试
下表是企业招聘功能的测试用例,检测了管理员中对企业招聘的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;用户登录系统。
表6-1 企业招聘的测试用例
功能描述 | 用于企业招聘 | |
测试目的 | 检测企业招聘时的各种操作的运行情况 | |
测试数据以及操作 | 预期结果 | 实际结果 |
点击企业招聘信息,必填项合法输入,点击保存 | 提示添加成功 | 与预期结果一致 |
点击添加企业招聘信息,必填项输入不合法,点击保存 | 提示必填项不能为空 | 与预期结果一致 |
点击修改企业招聘信息,必填项修改为空,点击保存 | 提示必填项不能为空 | 与预期结果一致 |
点击修改企业招聘信息,必填项输入不合法,点击保存 | 提示必填项不能为空 | 与预期结果一致 |
点击删除企业招聘信息,选择企业招聘删除 | 提示删除成功 | 与预期结果一致 |
点击搜索企业招聘信息,输入存在的企业名称 | 查找出企业招聘信息 | 与预期结果一致 |
点击搜索企业招聘信息,输入不存在的企业名称 | 不显示企业招聘信息 | 与预期结果一致 |
下表是简历投递功能的测试用例,检测了管理员中对简历投递信息的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;用户登录系统。
表6-2 简历投递的测试用例
功能描述 | 用于简历投递 | |
测试目的 | 检测简历投递时的各种操作的运行情况 | |
测试数据以及操作 | 预期结果 | 实际结果 |
点击添加简历投递,必填项合法输入,点击保存 | 提示添加成功 | 与预期结果一致 |
点击添加简历投递,必填项输入不合法,点击保存 | 提示必填项不能为空 | 与预期结果一致 |
点击修改简历投递,必填项修改为空,点击保存 | 提示必填项不能为空 | 与预期结果一致 |
点击修改简历投递,必填项输入不合法,点击保存 | 提示必填项不能为空 | 与预期结果一致 |
点击删除简历投递,选择简历投递删除 | 提示删除成功 | 与预期结果一致 |
点击搜索简历投递,输入存在的简历投递名 | 查找出简历投递 | 与预期结果一致 |
点击搜索简历投递,输入不存在的简历投递名 | 不显示简历投递 | 与预期结果一致 |
下表是通知公告功能的测试用例,检测了通知公告中分类列表的操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
前置条件;用户登录系统。
表6-3 通知公告的测试用例
功能描述 | 用于通知公告 | |
测试目的 | 检测通知公告时各种操作的情况 | |
测试数据以及操作 | 预期结果 | 实际结果 |
未选择分类,点击提交 | 提示请选择分类 | 与预期结果一致 |
未选择列表,点击提交 | 提示请选择列表 | 与预期结果一致 |
6.3 测试结果
通过编写了爬虫对德州市企业信息采集系统的测试用例,已经检测完毕了6.2章节中的3大模块,它为爬虫对德州市企业信息采集系统的后期推广运营提供了强力的技术支撑。
总结与展望
此时爬虫对德州市企业信息采集系统项目已经完成,即使实施的时间不是很长,但是这个过程中需要准备很长的一段时间去对系统设计开发所实际到的技术进行学习。在学习的过程中,我逐渐认识得到了我自身存在的一些不足。对于一些控制是必要的应用技能,能够理解,整个过程中仅仅是一个掌握了常用的性能和控制方法,我觉得挺容易的。从该系统中,系统的分析和设计的调查数据,并且已经经历了几个月,并努力几个月,该系统已经完成。很显然,该系统仍有很多不成熟,在系统设计过程中有许多技术缺陷存在。在设计的过程中也涉及到了很多自己无法解决的问题,主要通过找专业的网站和论坛来解决这些问题,对于圆满完成我的毕业设计,他们也贡献了很大一部分力量。系统的开发环境和配置都是可以自行安装的,系统使用django开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得系统运行更具有稳定性和安全性,从而完成实现系统的开发。
在以后的学习及工作中,我将继续努力学习计算机方面的技术,以期在平台开发中可以更好更快的实现需求功能。
参考文献
- [1]黄奕萍. 用电信息采集系统在供电企业的应用分析 [J]. 长江信息通信, 2023, 36 (12): 146-148.
- [2]纪佳佳. 企业用电信息采集管理体系与优化策略 [J]. 集成电路应用, 2023, 40 (10): 208-209.
- [3]张雁涔. 基于网络爬虫技术的企业大数据采集系统设计 [J]. 信息与电脑(理论版), 2023, 35 (12): 154-156.
- [4]庄俊杰. 基于LIMS系统的石化企业化验室信息管理系统 [J]. 化工设计通讯, 2023, 49 (02): 18-20.
- [5]林奎星. 基于三层B/S模式的物流企业仓储信息管理系统 [J]. 成都工业学院学报, 2022, 25 (02): 42-46.
- [6]肖斌,周海燕. 浅谈冶金企业信息化平台建设 [J]. 中国金属通报, 2022, (06): 1-4.
- [7]王琪琪. 国内外企业信用信息采集比较研究[D]. 湘潭大学, 2022.
- [8]刘思阳. 大数据在管理信息系统中的应用 [J]. 数据, 2021, (11): 59-61.
- [9]赵晔. 大数据背景下数据监管平台发票信息采集系统设计与实现[C]// 中共沈阳市委,沈阳市人民政府. 第十七届沈阳科学学术年会论文集. 沈阳体育学院体育教育学院;, 2020: 3.
- [10]黄显杭,马阔源,陈红刚. 企业生产经营报表信息管理系统研究 [J]. 中国管理信息化, 2020, 23 (17): 102-103.
- [11]魏强. 电力营销中用电信息采集系统的建设 [J]. 通信电源技术, 2020, 37 (05): 143-145.
- [12]龚家强, 企业创新需求信息采集与评价系统V1.0. 广西壮族自治区, 广西博士海意信息科技有限公司, 2020-12-06.
- [13]王闯. 基于用电信息采集系统应用的供电企业营销管理实践分析 [J]. 营销界, 2020, (42): 251+279.
- [14]潘丽娟,吴智慧,唐远明. 定制家具企业生产的MES信息跟踪系统研究 [J]. 家具, 2019, 40 (03): 119-125.
- [15]苏敬,阮清,王龙. 企业信息系统数据备份及磁盘空间释放的研究与实现 [J]. 中国管理信息化, 2020, 21 (17): 175-177.
- [16]胡宇. 电能量信息采集与监控系统的建设研究[D]. 华北电力大学, 2020.
- [17]赵陈粟. 网络爬虫在小微企业信息采集中的应用 [J]. 电脑编程技巧与维护, 2020, (06): 54-56.
- [18]Hagelin S . Shake my hand: Racial fantasies, white saviors, and Django Unchained's haunted screen [J]. The Journal of Popular Culture, 2023, 56 (5-6): 781-796.
- [19]Xiao Z ,Ali Y ,Xin W , et al. Sports Work Strategy of College Counselors Based on MySQL Database Big Data Analysis [J]. International Journal of Information Technology and Web Engineering (IJITWE), 2023, 18 (1): 1-14.
- [20]Henry M ,Ye H ,Nina W , et al. Trackintel: An open-source Python library for human mobility analysis [J]. Computers, Environment and Urban Systems, 2023, 101
致 谢
本次设计历时3个月。在这个毕业设计中,它离不开指导教师的指导,使事情基本顺利。指导老师无论是在毕业设计历经中,还是在论文做完中都给了了我特别大的助益。另一个方面,教师认真负责的工作姿态,谨慎的教学精神厚重的理论水准都使我获益匪浅。他勤恳谨慎的教学育人学习姿态也给我留下了特别特别深的感觉。我从老师那里学到了很多东西。在理论和实践中,我的技能得到了特别大的提高。在此,特向教师表示由衷的感激。
经过对该毕业设计的全部研究和开发,我的系统研发经历了从需求分析到实现详细功能,再到最终测试和维护的特殊进展。让我对系统研发有了更深层次的认识。如今我的动手本领单独处理疑惑的本领也获取到了特别大的演练学习增多,这是这次毕业设计最好的收获。
最后,在整个系统开发过程中,我周围的同学和朋友给了我很多意见,所以我很快就确认了系统的商业思想。在次,我由衷的向他们表示感激。