计算机毕业设计python+scrapy下的租房信息爬取与数据展示工具的设计与实现

运行环境

环境:python 3.6.0
Anaconda custom 64bit 4.3.0
Pycharm x64 专业版 2018.1.2
Web strom x64 专业版 2018.1.3
scrapy 1.3.3
MongoDB 3.6
Django 2.0.5
Semantic UI 2.2.4
chrome 56.0.2924.87
高德地图 API 1.4.6(2018.4.18)

项目介绍

首先安装Anaconda custom 64bit 4.3.0环境,再安装Pycharm x64 专业版 2018.1.2,接着用pip安装Django包,完成环境配置

在pycharm中的bishe文件夹中打开start.py,打开一个注释,运行一次,则完成爬虫运行。依次爬取。

打开pycharm中的毕业设计文件夹,命令行运行python manage.py runserver,完成运行。命令行中出现本机访问网址,打开网址即进入到本Django的首页。

时代在发展,技术在进步,互联网改变了全世界,各行各业都在这个互联网时代寻求自身的增长点,人们的日常生活也越来越离不开互联网。以租房为例,线下租房行业持续遭到冲击,越来越多的年轻人选择在互联网上挑选房源。然而网上信息混杂,数据来源众多,如何提升租房用户体验就成了一个值得探讨的问题。本文以此为研究方向,设计并实现了一个基于python开源爬虫框架scrapy的租房信息爬取系统,爬取互联网上多个含有此数据的网站。以城市为区分,将多个站点的数据存入非结构化数据库,再以数据库为连接,开发出一个以python开源web框架Django的基础的租房数据展示系统。与此同时,对爬取到的租房数据进行可视化处理。

本系统实现了一个房屋租赁信息爬取与数据展示系统,主要功能如下:
1.搭建scrapy框架运行环境、搭建MongoDB运行环境、搭建Django框架运行环境,为系统开发做环境支持;
2.编写爬虫代码,依据不同网页的特性,实现对目标房屋租赁信息网站的爬取,从获取的网页内容中抽取出有价值的信息,对其进行数据清洗、数据封装,并将其存入数据库中;
3.使用Django web框架,完成其与数据库的连接,实现将爬取到的房屋租赁信息在web端展示的功能;
4.采用有效的反爬取手段,避开各个网站对爬虫的封禁。
5.将爬取到的房屋租赁信息中的地理位置信息转化为经纬度,并最终实现数据的可视化展示。

效果图

计算机毕业设计python+scrapy下的租房信息爬取与数据展示工具的设计与实现_第1张图片
计算机毕业设计python+scrapy下的租房信息爬取与数据展示工具的设计与实现_第2张图片
计算机毕业设计python+scrapy下的租房信息爬取与数据展示工具的设计与实现_第3张图片
目 录
摘 要 I
ABSTRACT II
1 绪论 1
1.1 研究背景及需求分析 1
1.2 国内外研究现状 2
1.2.1 爬虫技术概述 2
1.2.2 爬虫设计者面临的问题与反爬虫技术现状 4
1.3 研究目标及研究内容 6
1.4 论文的整体结构 7
1.5 本章小结 7
2 相关理论及技术 8
2.1 robot协议对本设计的影响 8
2.2 爬虫 8
2.2.1 工作原理 8
2.2.2 工作流程 8
2.2.3 抓取策略 9
2.3 python发展现状 9
2.5 scrapy架构 10
2.5.1 scrapy:开源爬虫架构 10
2.6 MongoDB数据库 13
2.6.1 NoSQL数据库介绍 13
2.6.2 MongoDB数据库介绍 13
2.7 python web框架Django 14
2.7.1 Django框架介绍 14
2.7.2 MTV模式 14
2.7.3 ORM模式 14
2.7.4 template模板语言 14
2.7.5 Django工作机制 15
2.8 semantic UI开发框架 15
2.8.1 semantic介绍 15
2.8.2 semantic开发 16
2.9 高德地图API 16
2.10 本章小结 16
3 系统分析与设计 17
3.1 系统分析 17
3.1.1 系统功能 17
3.1.2 爬取对象分析 17
3.1.3 模块设计 18
3.2 数据流 19
3.3 系统总体逻辑层次 20
3.4 本章小结 21
4 爬虫与数据存储、展示的具体实现 22
4.1 爬虫模块 22
4.1.1 环境搭建与前期分析 22
4.1.2 爬虫规则预处理模块 23
4.1.3 数据抓取模块 24
4.1.4 数据存储模块 29
4.1.5 反反爬虫模块 30
4.2 数据库设计 34
4.2.1 数据库环境搭建 34
4.2.2 数据库表设计 35
4.3 数据展示模块 35
4.3.1 django环境搭建 35
4.3.2 前端UI模块 37
4.3.3 网页架构搭建模块 39
4.3.4 前端与数据库连接模块 41
4.3.5 地图展示模块 42
4.4 开启Django服务器 43
4.5 成果展示 43
4.6 本章小结 45
5 系统测试 46
5.1 测试环境及工具 46
5.2 系统功能性测试 46
5.2.1 数据爬取功能测试 46
5.2.2 数据展示测试 49
5.3 系统非功能性测试 49
5.4 本章小结 49
6 总结与展望 50
参考文献 51
致谢 52
附录一 外文文献(原文) 53
附录二 外文文献(译文) 59

你可能感兴趣的:(python,计算机毕业设计,python,django,爬虫)