Scrapy数据爬取,Django+PyEcharts实现可视化大屏(附源码)

15248f97572285a26eed91eacc7c512c.gif

大家好,我是小F~

最近有个小伙伴问我有没有基于Django的可视化大屏,小F就顺手找了一下。

于是便在GitHub上发现了一个不错的实战项目,基于qunaer长沙景点数据。

还是作者最近几天刚更新的,保真~

项目地址:

https://github.com/ChenZixinn/scenery_spider_web

不方便下载的小伙伴,可以直接去文末,小F都打包好了。

/ 01 /

项目介绍

使用Scrapy进行数据爬取,MySQL存储数据,Django写后端服务,PyEcharts制作可视化图表,效果如下。

055b9bca6c487c488935afaac395e387.png

f79490aeb07a9cc12352b2ab3c1a9256.png

1b09b72c2253662ed8ad2d09a09e22bd.png

发现每个模块都有详情页,可以通过点击首页各个模块的标签,进行访问。

基于数据可视化的游客行为分析系统,包含以下几类图表。

      • 景点数量各区县分布地图

      • 景点评分数据排名

      • 景点人数占比分析

      • 景点浏览人数占比分析

      • 景点评论词云图

      • 景点浏览时间分布图

      • 景点评分分布图

      • 景点数量各区县分布图

还有登录界面,可以自己注册账号,说明包含用户管理。

7da2744c3e2bb06f55d7092adfe3fc5c.png

接下来小F就来教大家如何去部署,以win10为例。

/ 02 /

项目部署-Python

首先需要安装Anaconda(版本4.11.0),方便创建Python环境。

Anaconda的安装方法,大家可以自行百度,还是比较容易的。

安装好以后,创建虚拟环境,根据项目提供的【requirements.txt】文件,安装所需的依赖。

# 创建虚拟环境
conda create --name test python=3.8.13

# 激活环境
conda activate test

# 安装依赖
pip install -r requirements.txt

/ 03 /

项目部署-MySQL

然后是安装MySQL数据库(版本8.0.33),推荐使用msi文件进行安装,不容易出错。

一定要记住root账户的密码,后续会用到。

安装好以后,创建数据库,使用数据库。

# 创建数据库
create database hunan_web;

# 使用数据库
use hunan_web;

接下来创建数据表,并且插入数据。

具体可以看项目中【new_hunan_web.sql】这个文件。

7b76622a12bb359f5fd023cbb46ff995.png

其中作者还提供了原始数据。

6696795fd901cdbda7489bd862fb6797.png

也就意味着,你无需运行爬虫代码,便有数据,能立马将项目运行起来。

最后在程序里面设置下数据库的密码。

hunan_web文件夹中setting.py文件里去设置。

5bbfbae37169829b2121d1d8f0fd3cff.png

设置好以后,运行服务的时候,就可以连接到数据库了。

/ 04 /

项目部署-运行访问

当Python和数据库环境都搭建好时,运行【manage.py】文件

# 运行项目
python manage.py runserver

结果如下。

0863d169be20a6477fd3590e4200be1d.png

使用谷歌浏览器访问网页地址:

http://127.0.0.1:8000/

fbf872669b6df96db305d5d392370c01.png

是一个登录页,点击去注册

13ed3e95733fdd8147f99ba82a9d179c.png

输入账号密码,即可注册成功,然后去登录

登录成功,即可看到到分析页面。

bdb36a1c2874d3ca4058aa5fc87afc95.png

/ 05 /

项目部署-数据更新

如果你想更新数据库,可以运行爬虫代码。

# 更新数据
scrapy crawl qunaer

运行的时候可能会出问题,可以通过下面两种方法解决。

# ImportError: cannot import name 'SSLv3_METHOD' from 'OpenSSL.SSL'
pip3 install pyopenssl==22.0.0

# AttributeError: module 'lib' has no attribute 'OpenSSL_add_all_algorithms'
pip3 install cryptography==38.0.4

如果上面的方法也不能解决,就把scrapy库升级到最新版本。

# 升级
pip install --upgrade scrapy

/ 06 /

总结

以上操作,就能实现可视化大屏项目的部署。

当然我们还可以写不同省份的游客行为分析系统,或者切换其它的数据来源

又或者是使用pyecharts其它类型的图表,这个大家都可以自行去学习。

相关文件及代码都已上传,公众号回复【Django大屏】即可获取。

万水千山总是情,点个 👍 行不行

推荐阅读

fd39d2995324d011e7ec806cc005c10c.jpeg

0acf6a6917d656fba40bcacfcbd138e3.jpeg

58e0b0e8257980ab5b6503e8d8a44275.jpeg

···  END  ···

a69694c6b965b6729e569128afe522d7.jpeg

  • 6
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Scrapy本身不提供数据可视化的功能,但可以通过将爬取到的数据导出到其他数据处理和可视化工具中来实现数据可视化。 以下是一些常用的数据处理和可视化工具: 1. Pandas:Scrapy可以将爬取到的数据存储到Pandas的DataFrame中,然后使用Pandas进行数据处理和可视化。 2. Matplotlib:Matplotlib是Python的一个绘图库,可以用来生成各种类型的图表,如折线图、柱状图、散点图等。 3. Seaborn:Seaborn是基于Matplotlib的数据可视化库,提供了更高级的绘图功能和更美观的图表风格。 4. Tableau:Tableau是一款数据可视化和商业智能工具,可以直观地展示数据,支持多种数据源和多种图表类型。 使用这些工具,可以将Scrapy爬取到的数据进行可视化展示,方便用户查看和理解数据。需要注意的是,Scrapy爬取到的数据需要进行清洗和处理,以便于进行可视化展示。 以下是一个简单的示例,展示如何将Scrapy爬取到的数据使用Matplotlib进行可视化展示: ```python import matplotlib.pyplot as plt import pandas as pd # 将爬取到的数据存储到Pandas的DataFrame中 data = pd.read_csv('data.csv') # 绘制折线图 plt.plot(data['date'], data['price']) plt.xlabel('Date') plt.ylabel('Price') plt.title('Price Trend') plt.show() ``` 在上述示例中,将Scrapy爬取到的数据存储在了`data.csv`文件中,然后使用Pandas读取数据并存储到DataFrame中,最后使用Matplotlib绘制折线图展示价格趋势。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值