论文总字数:33370字
目 录
1引言 1
1.1课题背景 1
1.2课题意义 1
1.3国内外研究现状 1
2 系统分析 2
2.1 可行性分析 2
2.2 需求分析 2
2.3 爬虫技术分析 3
2.3.1 爬虫整体设计 3
2.3.2 获取网页的工具 4
2.4 地图工具分析 4
2.4.1 高德API介绍 4
2.4.2 web使用高德API 4
2.4.3 其他功能 5
2.5 系统开发及相关技术 6
2.5.1 Visual Studio的安装和配置 6
2.5.2 Sql Server 数据库安装 7
3 系统设计 9
3.1 系统概述 9
3.2 系统功能设计 10
3.3 数据库设计 10
3.3.1 设计数据库 10
3.3.2 创建EF实体 11
4 系统实现 13
4.1 数据库的连接 13
4.2 主界面介绍 13
4.3爬取模块介绍 14
4.4 地图显示模块 20
4.5 数据查询模块 27
4.6 数据分析模块 34
5 结论 39
参考文献 40
致 谢 41
基于地理位置信息的房源推荐系统
李雷
,China
Abstract:The system wants to achieve the rental recommendation. In order to achieve this goal, the system integrates a web crawler, crawlers to run asynchronously, and the collection of data analysis. System uses C# language , . NET MVC technology, and uses Visual Studio as a development tool. In the map display, the system uses high-German map to provide services to achieve the positioning, search, commuter recommendation and other functions. Data analys is using Baidu EChart, you can visualize the data display. Through these tools and technologies, the system is implemented.
Key words:Housing recommendation;Crawler;.NET MVC;
1引言
1.1课题背景
在今天的生活中,随着互联网的大众化和普及化,使得计算机信息技术大力发展,推动我们生活变化。我们可以利用计算机技术做一些有利于我们生活的系统,提高我们的生活质量。比如通过互联网来租房,在地图上看到所有符合条件的房源,就不用到中介机构去租房,也不用去看房源,省时省心。
现在的房源出租市场受到了互联网的冲击很大,我们已经知道传统的租房平台已经无法满足现在人们的消费需求。而出现的这些新的需求就是租房子的生态环境的更大的扩展,我们应该了解这些需求,做出更好的服务。
房源推荐系统具有实时,高效,便利,容易操作等特点。基于用户的位置信息提供周围的房源。通过爬虫实时获取各大网站的房源信息,给予用户最真实,最可靠,最放心的数据。
房源推荐系统非常好用,用户可将自己的需求输入到系统中,然后在地图上选择适合自己的房源,并且还可以查看房源到工作地点的交通方式,房源的价格也可以显示在地图上,非常的直观,方便。
1.2课题意义
房源推荐系统是基于用户的实际需求开发出来的,把各家网站的房源信息结合起来,汇总在地图上,可以很直观清楚的看到所有的信息。通过本系统节约了用户找中介,看房源,租房的时间,提高了效率。系统采用ASP.NET开发,ASP.NET MVC基本上是一个来自Microsoft的Web开发框架,它结合了MVC(模型 - 视图 - 控制器)架构的特性,敏捷开发中最新的想法和技术,以及现有ASP的最佳部分 .NET平台。ASP.NET MVC不是从零开始构建的东西。 它是传统ASP.NET Web窗体的完美替代品。 它建立在ASP.NET的顶部,因此开发人员在构建MVC应用程序时享受几乎所有的ASP.NET功能。ASP.NET基于.NET Framework的Web开发平台,不但吸收了ASP以前版本的最大优点还做出了一些优化 [1]。
本网站开发的目的就是为了给有需求,但是没时间,没精力,不想找中介的人提供优质的服务。现在互联网非常普及,上网是一件很简单的事,所以使用此房源推荐系统十分便捷。相信使用过此系统都会觉得这是一个高效,好用的系统。
1.3国内外研究现状
现在网上的租房平台很多,各种各样,种类繁多,而且参差不齐,所以使用一个系统来整理这些数据就很有意义了,人们也越来越多的使用网络来获取数据。同时也出现了许多的网上租房平台。所以基于这些平台来获取数据就是一件很容易的事情,国外也出现了许多的在线租房平台。并且他们的模式也很先进,有许多的地方都是国内的租房平台可以学习的。
我们现在的租房现状还是更多的通过中介,因为找中介可以较快的租到房子,但是找中介需要支付很多的中介费,而且看房子也是一件劳心劳力的事情,所以大力发展在线租房平台是很有意义的,不仅提高了效率,也节约了成本。而且现在各种信息混杂,用户很难从中获取到自己需要的信息,所以一个汇集信息,分析数据的平台显得很重要。
2 系统分析
2.1 可行性分析
在继续编写一个项目前,应该做一个可行性分析报告,确定该项目是否值得开发,可不可行,在一个报告中分析项目的风险和难点,项目的投资和可能带来的效益。如今,在新技术的推动下,人们的生活也越来越便利了。如在网上看房,租房,分析房源数据,从中找到自己想要的房源也成为很容易的事情。房源推荐系统在一定程度上能帮助平时忙于工作而没有时间租房的人,下面从该项目的经济可行性,技术可能性,法律可行性来分析判断一下本系统的。
(1) 经济可行性:本系统对开发的计算机硬件和软件的要求不高,只要能正常运行的电脑就可以了,在软件方面,安装了Visual Studio,Sql Server等开发工具就行。开发本系统不需要使用其他的钱来买设备,所以综上所述,开发此系统在经济上是可以实行的。
(2) 技术可行性:本项目采用.NET MVC 技术,使用Visual Studio作为开发工具,以Sql Server 作为数据库系统,用IIS作为服务器,使用爬虫获取房源网站公开的房源信息,使用高德地图提供的技术支持。
(3) 法律可行性: 该系统的开发不涉及到任何商业机密,不侵犯个人隐私,所以开发此系统在法律上是可行的。
综上所述,此系统的开发在经济,技术,法律上都是没有问题的,是可以实行的,本项目有开发的意义和价值。
2.2 需求分析
本系统是通过爬虫获取多家房源网站的数据,然后在地图上显示,并且可以根据用户的需求对房源进行筛选,比如价格,通勤方式等。ASP.NET是现在很流行的编程框架,在许多领域都有着很好的解决方案,包括状态管理、缓存、验证、调试和部署等全部功能。同时使程序代码看起来更洁净、更简单。而且用户可以在地图上看到房源和工作地点之间的交通路线。用户也可以直接对这些数据进行增删改查,或者通过web浏览数据库中的数据。最后,用户还可以分析各大平台房源网站的数据,通过条形图,扇形图来直观的对比这些房源。因此系统应该包括4个部分:
1.爬虫模块
2.地图显示模块
3.数据浏览模块
4.数据分析模块
爬虫模块主要是在爬取多家网站的房源数据,然后将这些数据存入Sql Server。通过HttpClient 获取房源数据,然后用AngleSharp 对网页数据进行分析筛选,获取想要的数据。本系统可以进行大量数据的导入和分析,因为采用了 Sql Server优秀的数据库。
本系统采用高德地图,将房源数据显示在地图上,同时加入了一下新功能:
IP定位:调用高德地图IP定位功能实现
移动地图中心定位:移动地图定位,调用高德地图api
定位城市名
优化数据源、去除广告数据
数据分析模块可以对数据进行增删改查等操作,原理主要是将数据库中的数据提取出来显示在界面上。在数据分页方面,本系统使用了存储过程,通过数据库查询,而非LINQ查询,加快了查询的速度。用户可以根据房源的价格,房源的名称,房源的品牌进行筛选。
本模块采用百度的EChart 组件来显示数据,EChart 具有高效,直观,功能丰富等特点。系统会从各个角度对数据进行分析,让用户全方位了解房源信息。
2.3 爬虫技术分析
本节主要是分析爬虫的设计思路,相关的核心技术,以及爬虫运行的流程,通过对爬虫的剖析,让我们更加了解这个系统。
2.3.1 爬虫整体设计
一般网页抓取工具从一个或多个网页开始,获取URL起始页的列表; 当抓取网页时,网页抓取工具从当前页面提取新的URL,并将其放入队列中等待URL抓取,重复此行为直到系统停止条件为止[2]。网络爬虫可以被分为以下几类:通用网络爬虫,聚焦网络爬虫[3],增量爬虫,和深网爬虫[4]。在设计爬虫的时候考虑到易扩展,低耦合,高效率,将爬虫获取网页数据的模块单独封装起来,每一个爬虫都基于它获取网页数据,然后分析出自己需要的数据部分。在获取数据的时候防止爬虫被网站屏蔽,模拟了User-Agent,降低了爬虫运行的速度,如图1所示。
图1 爬虫流程图
2.3.2 获取网页的工具
微软.net4.5中推出的HTTP 应用程序,并提出了System.Net.Http的编程接口。其中,HttpClient是一个使用HTTP协议的工具,类似于WebClient或HttpWebRequest。 这个工具的亮点是Async的完全支持。 事实上,这不是一个新特点,因为我们已经在REST Starter Kit上实现了.NET 4.0 We API。主要提供如下内容:
1. 现代化的 Web Service 的客户端的组件,用户能在 HTTP中使用;
剩余内容已隐藏,请支付后下载全文,论文总字数:33370字
相关图片展示:
该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;