大数据爬虫分析基于python的外卖数据分析

本文介绍了一个基于Python的分布式信息收集系统,用于高效地对外卖数据进行采集和分析。系统采用Scrapy框架,结合云计算和MySQL,实现智能URL收集、信息分类和发布。通过数据清洗和格式统一,提高了数据质量。此外,利用Flask和PYQT5实现信息管理和展示功能,对外卖数据进行了深度分析,包括商家订餐量、用户行为、竞争对手分析等。
摘要由CSDN通过智能技术生成

前言

  在这样的背景和要求之下,在对信息采集技术的工作原理,以及常见的爬虫框架、采集算法进行了深入的学习和研究,在对信息网站的结构特征进行了深刻的分析之后,结合采集对象的特征,将两种算法相结合,设计出了四种采集程序,并基于Soapy框架,采用了中间件技术,开发了动态浏览器标识和代理池。利用MySQL数据库和云平台虚拟化技术,构建了一套可靠性和可行性极高的分布式收集集群,提高了数据收集效率,利用PYQT5实现跨平台的信息发布程序,利用Selenium自动化工具,解决了网站登陆、网站查询以及模拟人工进行数据收集。利用FLASK技术实现了资料收集与管理系统及大屏幕的显示功能。另外,在数据清洗的基础上,通过数据清洗,格式转换,移除和增加对象,以达到数据的一致性。
本文以Python为基础,对外卖数据进行了分析,从而极大地降低了有关产业的资讯工作者的工作强度,为更快、更好、更方便地获得发布资讯,提供了技术支撑。到现在为止,这个系统已经从最初的收集对象,到最近的几百个国际和国内的站点,已经有一年多的时间了,收集到了395万条的数据。

关键词:外卖数据;信息采集;Python

一、项目介绍

  本论文的研究目的是为了给采编者提供一套完善、高效的智能信息收集解决方案,并利用一系列的程序设计与开发,为采编者提供一个具备稳定、鲁棒性的信息收集、发布集成平台。本文将以Python为基础,来实现一组分布式收集程序。在此过程中,编辑人员可以通过所收集的网站来确定收集URL和收集的主题词。此外,还可以选择一位对网页设计稍微了解一些的运营人员,去寻找一条通用的收集路径,与此同时,还可以对收集规则及清洗规则进行定制,这样就可以很便利的将收集到的信息进行组合,从而形成一套完整的分布式收集系统。在此基础上,利用云计算的虚拟化技术,结合PYQT接口的构建,以及WEB Flask的构建,实现大规模的收集、清洗、分类、发布。
一个分散的消息收集和发布系统必须具有下列特征:
1.基于S-Crapy开放源代码框架,通过云计算、Python、Mysql等技术,构建一种完全可实现、可操作的开放源代码信息收集系统,帮助记者完成工作任务。采编人员仅需输入所收集到的网址及题目即可迅速启动收集工作并进行信息归类。
2.根据新的数据收集要求,采用云计算技术实现新的收集器的迅速部署。对于资料采集点的改版,更新,采集器可以进行智能响应。同时,系统的维护者也能迅速地更新数据收集系统,使之能够适应不断改变的网络环境。
3.收集程序收集信息时,不会对站点的正常运行造成任何影响,也不会占据太多的网络带宽,当站点出现不提供服务时,收集程序会进行智能处理。
4.收集到的信息,可以利用自动清理过程,去掉冗余的html代码,使其具有一致的格式,并根据话题和关键词,对其进行分类标签。
5.可以在多个平台上一次点击发送该消息。

二、开发环境

开发语言:Python
python框架:Scrapy Flask
软件版本:python3.7/python3.8
数据库:mysql 5.7或更高版本
数据库工具:Navicat11
开发软件:PyCharm/vs code
前端框架:vue.js

————————————————

三、功能介绍

  在上述需求分析的基础上,通过深入研究,将系统使用人员划分为信息采集编辑、信息维护编辑、信息发布编辑三个角色。然后根据这个人的工作内容,给出了对应的系统函数。本系统为收集资料输入接口,并对收集资料进行维护。具体内容有:网站名称,网站首页,网站主域名,栏目名称,栏目页面 URL,分配爬虫标志,是否开启采集的录入和维护。在图2-5中可以看到。

在这里插入图片描述

图2-5信息采集编辑功能图
  该系统还给出了 Xpath的保存接口,以及获取的参数的调节接口。主要内容有:网站名称,主要域名,清单获取方法,清单关键字,清单页字段 XPL路径,详细页字段 XPL路径,是否打开测试,本地存储路径,以及是否输入重复参数及如何保存等。在图2-6中可以看到。该系统为用户提供了一个消息发布的接口。具体内容有:当日下载量、当日发布量、昨日下载量、昨日发布量、待处理信息以及显示信息详情、同步发布等。在图2至7中可以看到。
在这里插入图片描述
图2-6信息维护编辑功能图
在这里插入图片描述

图2-7信息发布编辑功能图

四、核心代码

部分代码:


def users_login(request):
    if request.method in ["POST", "GET"]:
        msg = {
   'code': normal_code, "msg": mes.normal_code}
        req_dict = request.session.get("req_dict")
        if req_dict.get('role')!=None:
            del req_dict['role'
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### py爬虫+数据分析实战项目 #### 记录日常练手实战项目源代码,以及PY系列的内容,涵盖了 - 1、星巴克店铺数量及分布城市的分析 - 2、微信好友中的男女比例、个性签名、全国分布的可视化 - 3、使用 Selenium 自动爬取斗鱼直播间的数据,包括直播间 图片、详情链接、标题、分类、热度、主播等 - 4、Kaggle上的一个经典比赛项目:泰坦尼克号生存预测。) 在这里,要求你完成对哪些人可能生存的分析,特别是要求您运用机器学习的工具来预测哪些乘客幸免于难 - 5、使用 Scrapy_Redis 抓取京东图书的信息,有图书的大类别(book_category)、图书小类别的 url(s_href)、图书的小类别(s_cate)、图片(book_img)、书名(book_name)、作者(book_author)、出版社(book_press)、出版时间(book_publish_date)、价格(book_price)等 - 6、爬取及分析拉勾网数据分析职位的相关信息,利用爬虫软件(八爪鱼)爬取数据,再从多维度(区域、 薪资、学历、技能要求等)进行分析,使用 python 分析分析区域分布、薪资分布及其各个 字段之间的关联 -------- 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值