摘 要
无论何时何地,信息都很重要。随着万维网的飞速发展,信息以指数的形式出现爆炸式增长。当传统的信息处理延伸到互联网领域时,往往需要下载分布在各个网站本地的信息进行进一步处理。但是,当收集到大量数据时,现有方法自然不适用,而现有方法在网上搜索信息时无法避免的问题之一是难以区分和选择令人眼花缭乱的信息.为了更高效、更准确地获取想要的信息,大量的时间信息是网络爬虫的绝佳手段。自定义规则让您挖掘特定网站的相关信息,筛选后得到更准确的信息。
本设计主要对外卖饮料数据进行数据挖掘和分析。我国外卖市场经过几十年的发展,外卖行业规模不断扩大。外卖行业的规模可以持续增长,外卖平台依托当今领先的外卖平台强大的大数据技术,依靠大数据分析和强大的运营优化和机器学习,在线完成所有环节。线下送货单。外卖平台是一个数据精细化的平台,每一个数据都是一个整体质量的纽带,同时每一个数据都反馈一个当下的问题,通过调整目标来提升质量不再是难事。
网络爬虫主要使用Python 脚本语言。使用Tkinter 库构建图形界面,操作简单。换句话说,单击该按钮会触发该功能。数据存储不使用SQL和NoSQL,网络爬虫的爬取结果直接存储在xlsx文件中,方便数据读取和数据可视化。使用matplolib库,用pandas库读取xlsx文件,通过读取获取的数据创建散点图或直方图,可以轻松观察数据分析。本项目是一款外卖饮料数据分析系统的设计与实现。最后,用户可以登录系统完成饮料数据分析的可视化。
关键词:网络爬虫;Python;数据挖掘;数据分析 ;外卖饮品
ABSTRACT
Information is important wherever and everywhere.With the rapid development of the World Wide Web, information has exploded in an exponential form.When the traditional information processing extends to the Internet field, it is often necessary to download the information distributed in each website for further processing.But, when large amounts of data are collected, existing methods naturally do not apply, and one of the problems that existing methods cannot avoid when searching for information online is the difficulty in distinguishing and choosing dazzling information. In order to obtain the desired information more efficiently and accurately, a large amount of time information is the perfect means for the web crawler.Custom rules allow you to mine the information about a particular site and filter it to get more accurate information.
This design mainly conducts data mining and analysis of external beverage sales data.After decades of development in China’s takeout market, the scale of the takeout industry continues to expand.The scale of the takeout industry can continue to grow. Relying on the powerful big data technology of today’s leading takeout platform, big data analysis, powerful operation optimization and machine learning, the takeout platform can complete all the links online.Offline delivery order.The delivery platform is a platform for data refinement, and each data is an overall quality link. At the same time, each data feeds back a current problem. It is no longer difficult to improve the quality by adjusting the target.
Web crawlers mainly use the Python scripting language.Building a graphical interface using the Tkinter library is easy to operate.In other words, clicking the button triggers the feature.Data storage does not use SQL and NoSQL, and crawling results of network crawlers are stored directly stored in the xlsx file to facilitate data reading and data visualization.Using the matplolib library, the xlsx file is read with the pandas library, and a scatter plot or histogram is created by reading the acquired data to easily observe the data analysis.This project is the design and implementation of a takeaway beverage data analysis system.Finally, users can log into the system to complete the visualization of the beverage data analysis.
Key words: web crawler; Python; data mining; data analysis; takeaway drinks
目录
第1章 绪论 1
1.1选题背景 1
1.1.1课题的国内外的研究现状 1
1.1.2课题研究的必要性 2
1.2课题研究的内容 3
第2章 开发软件平台介绍 4
2.1 软件平台 4
2.2 开发语言 4
2.2.1 Python 4
2.2.2 html+css+js 4
第3章 网络爬虫总体方案 7
3.1 系统组成 7
3.2 工作原理 7
第4章 模块化设计 8
4.1 Tkinter图形界面模块介绍 8
4.1.1图形模块的略解 8
4.1.2图形界面模块与其他模块的交互 8
4.2 爬虫模块 10
4.2.1 requests库的说明及使用 10
4.2.2 bs4库的说明及使用 10
4.2.3 json模块的说明及使用 11
4.2.4爬虫模块的流程解析 11
4.3 数据分析模块 13
4.4 反爬虫模块 13
第5章 实验结论与发展前景 14
5.1网络爬虫主要实现代码 15
5.2 xlsx文件 15
致 谢 19
参考文献 20
本设计主要基于Pycharm的编程平台建设,整个系统由如下几个模块组成,具体如下:Tkinter图形界面模块,设置按钮,点击按钮触发对应功能;爬虫模块,编写爬虫文件,由Tkinter模块‘查询’按钮触发,对获取内容以xlsx保存;数据分析模块,读取对应的xlsx文件,让数据可视化,由Tkinter模块‘生成可视化图’按钮触发;反爬虫模块,用于存储多个浏览器型号和多个代理IP,当爬虫文件启动时,每次循环自动从反爬虫模块中调用函数获取随机得到浏览器型号和代理IP,本文爬取目标网站IP的封禁程度一般,因此代理IP选项被注释掉了(需要使用时将对应语句取消注释即可),即本文暂未使用代理IP。
部分代码如下:

# -*- coding: utf-8 -*-
"""
Created on Wed Feb  2 19:46:45 2022@author: 24587
"""from selenium import webdriver
import time
# from cnocr import CnOcrclass selenium_warm(object):'''将selenium爬虫的各个动作封装在这个类当中,但是不会进行数据处理'''def __init__(self,web_url):'''最简单的打开页面'''self.driver=webdriver.Edge()self.driver.get(web_url)def shift(self,page_num):'''切换页面,page_num是想要跳转到的页面编号,从0开始编号'''page=self.driver.window_handlesself.driver.switch_to.window(page[page_num])def close(self):self.driver.close()def click(self,xpath,wait_time=0):'''这里有两个坑,第一,要先滚动到元素所在位置,让元素加载好,这样才能运行find_element第二,元素加载好之后不一定可点击,要使其处于可点击状态,并等一会才能点击,所以有个wait_time参数'''item=self.driver.find_element_by_xpath(xpath)# 使元素处于可点击状态self.driver.execute_script("arguments[0].scrollIntoView();", item)self.driver.execute_script("arguments[0].scrollIntoView(false);", item)# 等待time.sleep(wait_time)item.click()# self.driver.find_element_by_xpath(xpath).click()def wait(self,time_num):time.sleep(time_num)def roll_bottom(self):self.driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")def get_text(self,xpath):return self.driver.find_element_by_xpath(xpath).textdef get_elements(self,xpath):return self.driver.find_elements_by_xpath(xpath)def screen_shot(self,xpath,save_path):item=self.driver.find_element_by_xpath(xpath)# 截图的时候也要使其加载好才行self.driver.execute_script("arguments[0].scrollIntoView();", item)self.driver.execute_script("arguments[0].scrollIntoView(false);", item)item.screenshot(save_path)# def ocr(self,xpath,mid_img_save_path):#     '''目前返回的是未处理的识别结果,是一个列表#     列表的每一项是识别出来的一个文字块,文字块也是一个列表,其中第一项是文字内容列表#     第二项是置信率#     '''#     item=self.driver.find_element_by_xpath(xpath)#     self.driver.execute_script("arguments[0].scrollIntoView();", item)#     self.driver.execute_script("arguments[0].scrollIntoView(false);", item)#     item.screenshot(mid_img_save_path)#     ocr = CnOcr()#     res = ocr.ocr(mid_img_save_path)#     return resdef get_html(self):html = self.driver.execute_script("return document.documentElement.outerHTML")return htmldef page_back(self):self.driver.back()if __name__ == "__main__":warm=selenium_warm("https://www.icourse163.org/")warm.roll_bottom()text=warm.get_text('//*[@id="app"]/div/div/div[1]/div[1]/div[1]/span[1]/a')print(text)text=warm.ocr('//*[@id="app"]/div/div/div[1]/div[1]',"ocr.jpg")print(text)warm.screen_shot('//*[@id="app"]/div/div/div[1]/div[1]/div[1]/span[1]/a', "shot.jpg")warm.click('//*[@id="app"]/div/div/div[1]/div[1]/div[1]/span[1]/a',0)














大数据背景下外卖饮品数据分析系统设计与实现相关推荐

  1. 学界 | 大数据背景下,景观研究怎么做?

    在这篇文章的开头,在下并不想将很多有关于大数据景观的大概念和大理论摆出来,因为并不直观也很难理解,所以,直接想给大家分享两个案例,之后我们在逐步深入说明: 巴塞罗那大时代--用展现来强化文化遗产和社会 ...

  2. 大数据架构详解_【数据如何驱动增长】(3)大数据背景下的数仓建设 amp; 数据分层架构设计...

    背景 了解数据仓库.数据流架构的搭建原理对于合格的数据分析师或者数据科学家来说是一项必不可少的能力.它不仅能够帮助分析人员更高效的开展分析任务,帮助公司或者业务线搭建一套高效的数据处理架构,更是能够从 ...

  3. 【2016年第2期】大数据背景下的治理现代化:何以可能与何以可为(上)

    刘强强,石乾新 贵州大学公共管理学院,贵州 贵阳 550025 摘要:大数据是后工业社会中信息爆炸式增长和网络计算技术迅速发展的结果.大数据时代深刻地改变着现代社会的生活方式和治理理念.分析了公共治理 ...

  4. 大数据背景下的智慧物流:物流行业解决方案

    大数据背景下的智慧物流: 物流行业发展迅速,生产制造企业对其物流的要求越来越高,无论是2B业务还是2C业务,均要求全程的透明可视.物流业务逻辑复杂,存在大量数据孤岛.且物流数据可视化要求高,报表要求也 ...

  5. 大数据背景下的信息资源管理

    摘要:随着网络信息化时代的日益普遍,我们正处在一个数据爆炸性增长的"大数据"时代,在我们的各个方面都产生了深远的影响.大数据是数据分析的前沿技术.简言之,从各种各样类型的数据中,快 ...

  6. 大数据背景下网络信息安全分析探讨

    大数据背景下网络信息安全分析探讨 刘松溢 (华北理工大学 河北省唐山市曹妃甸区华北理工大学063210) 摘要:在经济快速发展的今天,大数据技术已被广泛地运用于社会生活中,这些技术的应用给人类的生产和 ...

  7. 大数据学情分析_大数据背景下的大学生学情分析研究

    宋承云 张琼敏 石美凤 厉华杰 摘 要:"学情分析"是教学活动的基本环节,也是教学研究的基本内容.在我国大学生教育从"量"到"质"转型的背景 ...

  8. 浅析大数据背景下电视节目的革新

    摘 要:随着互联网.云计算等相关科技的迅猛发展,大数据的运用已渗透到社会的方方面面.本文通过分析大数据在<女神的新衣>这一综艺节目中的运用,指出了此节目的创新之处,并且引出了在大数据背景下 ...

  9. 大数据产品价值主张_大数据背景下新零售商业模式探究

    摘 要:目前,大数据在生活中的应用愈发广泛,各个方面都被智能设备转化为数字,分析运用起来,大数据对销售领域的影响也特别大,通过大数据及其相关的技术和各种智能采集设备.物联网.人工智能的应用,很好地实现 ...

最新文章

  1. Swift3.0和OC桥接方法
  2. Hadoop学习13--zookeeper相关
  3. iis 7 php_Windows server 2008 下基于IIS7配置php7.2运行环境
  4. ETH:Windows搭建ETH(区块链技术)利用Web端和小程序端两种方式调用ETH上的SC智能合约
  5. macos mysql 阿帕奇_Mac配置apache,mysql
  6. linux设置nexus开机自启动_CentOS7配置nexus开机自启动
  7. 一个封装比较完整的FTP类——clsFTP
  8. 大数据技术周报第 007 期
  9. java多态 成员访问特点(父类引用指向子类对象)
  10. Cocos-2d 关于SwallowTouch,进一步解释触摸事件分发机制
  11. Hadoop_28_MapReduce_自定义 inputFormat
  12. NeurIPS'21|MixSeq:从微观数据到宏观时序预测的桥梁
  13. 跳频信号检测与参数估计技术研究
  14. YAML语法详细总结
  15. 接口测试系列之——接口安全测试
  16. 2019年信息系统项目管理师考试时间
  17. 补充学习2021.7.21—动态水波进度条
  18. 100本最棒的web前端图书推荐
  19. 个人居间服务,劳务费用怎样合理节税?自然人代开3个点
  20. 机器学习中的数据级联:被低估的数据,被高估的模型

热门文章

  1. 初高中英语老师教师资格证考试成功通过前辈备考经验分享
  2. 网站交换友情链接的基本原则
  3. 计算机在医院审计的应用,计算机辅助审计在医院经济责任审计中的应用解析(转)...
  4. 4G/5G工业路由器视频传输应用方案
  5. transformer--变形金刚
  6. NLP与AI会议期刊详细整理「CCF, SCI」
  7. android 3dmax
  8. CSS里的颜色简写(3位字母和6位字母)
  9. 光线追踪:Mitsuba Pipeline
  10. 标准下载 | 人工智能算法金融应用评价规范