收藏 分享(赏)

基于Python的居民用电特征搜索引擎设计.pdf

上传人:哎呦****中 文档编号:3075963 上传时间:2024-01-19 格式:PDF 页数:4 大小:2.41MB
下载 相关 举报
基于Python的居民用电特征搜索引擎设计.pdf_第1页
第1页 / 共4页
基于Python的居民用电特征搜索引擎设计.pdf_第2页
第2页 / 共4页
亲,该文档总共4页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、信息与电脑软件开发与应用Information&Computer基于 Python 的居民用电特征搜索引擎设计2023年第10 期朱宇飞王莉周嘉磊(湖南工商大学,湖南长沙摘要:文章分析了居民用电的特征,通过Python工具利用爬虫技术以“居民用电”为关键词爬取了百度和中国国家知识基础设施(China NationalKnowledgeInfrastructure,CNK I)中的相关文本,统计文本出现的频率,获得出现次数较高的关键词,然后对这些关键词进行可视化设计和分析,得出百度的关键词主要与价格有关,而CNKI的关键词与用电行为有关。关键词:居民用电;Python;爬虫;词频统计;可视化设计

2、中图分类号:TP391Design of a Python Based Residential Electricity Feature Search Engine410205)文献标识码:A文章编号:10 0 3-9 7 6 7(2 0 2 3)10-154-0 4ZHU Yufei,WANG Li,ZHOU Jialei(Hunan University of Technology and Business,Changsha Hunan 410205,China)Abstract:This article analyzes the characteristics of residential

3、 electricity consumption.Using Python tools and webscraping techniques with residential electricity as the keyword,relevant texts were crawled from Baidu and China NationalKnowledge Infrastructure(CNKI)databases.The texts were subject to word frequency analysis,identifying the most frequentlyappeari

4、ng keywords.These keywords were then visualized and analyzed for further insights.Baidus keywords are mainlyrelated to price,while CNKIs keywords are related to electricity consumption behavior.Keywords:residential electricity consumption;Python;crawler;word frequency analysis;visualization design0引

5、言随着国内经济的发展和互联网的快速普及,居民用电费用已经成为人们日常消费的重要组成部分 1-3。如何利用互联网上不断增加的居民用电特征数据成为挑战。文章旨在探究网页数据的获取技术,重点讨论如何从大量的数据中提取所需数据。由于Python语言在国内外均有广泛的应用,文章使用Python3.10和PyCharm编译环境分析数据。文章将居民用电数据分析过程与整个社会用电网络和社会环境相结合,研究并探讨居民用电类型,了解影收稿日期:2 0 2 3-0 3-2 5基金项目:2 0 2 1年湖南省大学生实践创新训练项目“基于Python的居民用电特征搜索引擎设计项目”(项目编号:S202110554046

6、)。作者简介:朱宇飞(2 0 0 1一),男,湖南郴州人,本科在读。研究方向:电子信息工程。通信作者:王莉(19 7 8 一),女,湖北武穴人,博士研究生,副教授。研究方向:智慧物流、电力技术经济。E-mail:。响居民生活用电的因素,为电价政策制定者提供居民用电相关信息。通过爬取居民用电特征相关数据并建立合理的数据分析模型,可提取和分析居民用电相关因素,并获得调整居民电价的依据 4-6。1总体方案设计方案主要分为爬虫部分、词频统计部分、可视化部分共3个部分。方案首先通过网络爬虫从中国国家知识基础设施(China National Knowledge Infrastructure,CNKI)和

7、百度搜索引擎中爬取以居民用电为关键词的文本并存储为txt文本格式,其次统计获取文本的词频,154信息与电脑2023年第10 期Information&Computer将结果转化为excel格式,最后将excel格式的数据转化为饼图和条形图的形式进行展示。文章通过Urlib库的get方法在百度搜索上,以“居民用电”为关键词进行爬取得到列表页,并将从列表页中得到的详情页统一资源定位符(UniformResoureLocator,U R L)和简介存人csv文件。完成所有列表页的爬取后,设计方案会继续爬取各个子页面,将子页面中的文本更新到原来的简介文本列中,最后进行文本的汇总并转化为txt文件。爬取

8、CNKI信息的方法则是采用子网页跳转的方式模拟人的点击来爬取,首先爬取主页面,其次跳转到子页面爬取摘要并保存到文本中,最后回到主页面爬取文本,筛选出中文摘要 7-9 在词频统计部分,文章采用jieba库清洗分割文本数据,先读取并导入爬虫爬取的文本,然后进行分词和词频统计。文章首先采取搜索引擎模式的分词方法得到可能出现的全部词,其次加入停用词表去掉“的”“和”“是”“与”“为”这类中文停用词,再次利用re库加人标点符号词表去掉所有的标点符号,最后按照从大到小排列统计的频数,将前8 个频数关键词及其频数保存为excel文件。在可视化部分,文章主要根据词频统计中得到的关键词和对应的频数进行绘图,主要

9、包括百度搜索得到的条形图、饼状图,CNKI摘要得到的条形图、饼状图,百度搜索和CNKI摘要关键词对比的条形图。首先读取词频统计部分保存的关键词文件,其次导人读取的数据,最后利用Matplotlib画图库绘制各类可视化图形。2网络爬虫2.1网络爬虫的原理网络爬虫是一种基于Python的自动化数据收集工具,按照一定规则自动抓取互联网中的信息。网络爬虫的本质是通过向网络服务器发送头部信息,告知服务器需要接收什么样的数据,然后返回需要的信息。网络爬虫一般使用队列排列子网页,并逐个读取直到获取所有信息。2.2爬虫库的介绍使用网络爬虫所用到的库包括urllib、b e a u tifu lsoup、t i

10、 m e、r e 共3个库。由于许多网站都会设置反爬,故需要在获取的页面链接中加人headers信息和利用time库模拟真实用户浏览网页。一般headers信息只需要包括User-Agent和cookies信息。urllib库是Python内部的系统库,提供了强大的解析能力。beautiful soup软件开发与应用库和re库主要用于定位所需要的信息标签位置,通过正则表达式的形式检索替换符合某些规律的文本,从而提取信息。time库主要用于延时,通过time.sleepO让爬虫程序延时一段时间,防止访问的速度太快导致被服务器认定为爬虫。beautiful soup、t i m e、r e 库属于

11、第三方库,需要进行安装。第三方库有两种常见的安装方法:一是直接在terminal终端中使用pip install的方式进行安装;二是通过filesetting找到工程,然后选择需要的package进行安装。2.3爬虫爬取百度网页的过程百度搜索页爬取的流程分为5步。步骤一,获取百度搜索的URL。U R L=h t t p s:/ class就可以找到标题文本和子页面的链接 10 步骤三,得到详情页的URL。直接点击“href-”后面的网址就能跳转到子页面。但是,这一串字符串是百度进行加密后的URL,爬虫程序提取到后不能直接使用,因此需要通过程序,将该字符串发给百度服务器获取爬虫程序能用的URL以

12、供后续的使用。步骤四,得到每一页的URL规律。文章通过pn的值进行循环爬取,每次读取第i页时将pn=i*10传入URL,并将得到的子页面的URL存储到一个队列中,待到完成全部存储后再分析爬取的数据。步骤五,存数据。将爬取到的文章标题、文章简介以及能跳转到文章网页的URL保存成csV文件,以供后续的爬取。2.4爬取 CNKI 摘要的过程CNKI 的爬虫过程与百度的爬虫类似,都是先在首页输入关键词“居民用电”,然后进人开发模式,依次找到文本信息的位置,得到子页面的URL。C NK I 与百度网页相似,herf后面的URL都经过了加密,需要用程序得到真实的URL。2.5主函数流程介绍列表页以pn的值

13、来区分。由于每页需要的位置相同,只需要通过一个以pn值为循环的代码就能读到所有的列表页的信息。由于列表页过多,设计仅取7 5页进行155信息与电脑软件开发与应用Information&Computer演示。在主函数中,首先需要得到浏览器的headers信息用于模拟真实浏览器用户向服务发送get请求。headers信息主要是User-Agent和Cookies,若不添加headers信息直接使用爬虫时,很容易被反爬程序发现。得到这些信息的方式为进入浏览器后按F12进入开发者模式,选择网络,选取下方面板上一个cn或.com结尾的链接即会在右边的标头中找到相应的User-Agent和Cookies。

14、其次,通过URL定位文章所在的网页。再次,向浏览器发送get请求获取网页元素信息。最后,通过BeautifulSoupO函数得到所需要的文本信息。3词频统计词频统计是一种通过处理文本来得到用户所需要文字和关键词的技术,通过切割文本的文字和词,统计出相同文本在整个文本中出现的次。词频统计主要使用jieba库进行文本中词的切割和统计。jieba库主要分为精准模式、全模式和搜索模式共3种切割模式,其用法函数分别为jieba.lcutO、jie b a.lc u t(c u t _ a ll-t r u e)和jieba.cut_for_searchO。经过搜索引擎模式分词后得到的关键词和其频数结果,

15、如表1和表2 所示。表1百度的关键词和其频数结果居民用电特征量关键词频数/次用电安全39收费标准14用电量82商业91阶梯电价358生活用电187城乡198电器56表2 CNKI的关键词和其频数结果居民用电特征量关键词频数/次电力负荷385城市23分时用电176用电行为429用电量38工业37用电效率194地区624可视化设计可视化设计主要用到的库为Matplotlib库。Matplotlib库是Python中较常用的数据可视化的绘图库,能够绘制多种图形,如条形图和饼状图。该库可以读取excel中2023年第10 期的数据进行饼图的比例分配,从而直接将excel的数据转化为可视化图形。该库主要

16、调用pieO函数绘制饼状图,利用barO函数绘制条形图。5数据分析由表1可知,“阶梯电价”是人们最关心的事情。导致“阶梯电价”出现频次最高的原因是各个家庭的用户用电在以往的数据中呈现出一种阶梯状态。然后出现的两个较多的关键词分别是“生活用电”和“城乡”。这两个关键词出现较多的原因是大多数用户的用电都属于生活用电。我国的用电不仅分为居民生活用电、商业用电、工业用电,每个城市用电水平也有很大的差异。由于后续关键词都与“阶梯用电”“生活用电”“城乡”这3个关键词息息相关,这里就不再进行深入分析。由表2 可知,“用电行为”是出现最多的一个关键词。导致“用电行为”出现频次最高的原因是居民用电的数据与居民

17、的行为关联度很大,许多学者对此进行了分析并发表了许多论文。故在CNKI这种学术网站中“用电行为”关键词出现频次最高。“用电负荷”关键词的出现概率排行第二。因为各个地区的环境多种多样,城市和乡村的用电需求存在差异,所以“用电负荷”成为衡量一个地区电价的重要标准。“用电效率”“分时用电”出现的频数也相当多,这是由于“用电效率”“分时用电”对于居民用电行为影响较为显著。对比百度搜索引擎的数据和CNKI摘要的数据可以发现,这两个不同网站的关键词存在一定的差异。百度的关键词体现了居民用电的行为特征在哪些地方存在差异,其得到的文本一般为用电的价格和用电量,以及相关的用电政策。而 CNKI 的数据主要是一些

18、研究者根据研究的方向来进行数据的收集以及用户行为的分析,更偏向于一种模型的预测,得到的关键词大多是与居民用电行为关联。6结语文章以“居民用电”为关键词爬取了百度和CNKI,并对结果进行了对比分析,从对比结果看出人们最关心的问题是阶梯电价,包括生活用电、城乡差异等。在学术领域中,用电行为和用电负荷是常见的研究关键词。百度搜索引擎和CNKI摘要中的关键词有一定差异,反映了它们关注的焦点和数据来源的不同。在本次设计中只爬取到了百度详情页面的URL,没有继续进行进一步的爬取,当然要想对相应的文章进行深人的爬取也是可以的,只需要将转化好的URL进行进一步的爬取。(下转第16 0 页)156信息与电脑软件

19、开发与应用Information&Computer3关键技术与创新点3.1所解决的关键技术问题(1)基于大数据的地图引擎服务。引人地图引擎,依据地图底图定义道路级的数据结构,包括门架和收费站的位置、道路中心点等相关信息,实现门架标注、车辆流量显示、车辆流向显示等,是数据可视化展示的关键技术之一。(2)复杂路网结构模型。高速公路路网结构涉及复杂的路网交叉、互通节点,具有路段多、交叉或循环节点复杂等特点,建立山西省的交通通行路网模型,是解决车辆行驶路径和通行量分析的基础条件。(3)基于大数据的车流量分析技术。基于复杂路网结构和收费大数据,建立统一的数据采集与大数据处理、计算机制,降低大数据使用成本

20、,让数据产生更大价值。通过深度学习、机器学习等大数据算法解决大规模收费数据中分车型、分时间段、分区域实时计算,是实现车流量大数据分析的关键技术之一。(4)大数据分析可视化技术。将大数据分析结果进行可视化展现,将分析数据以图形、GIS地图、排名等方式进行实时展示,按照收费站、省界、路段、区域以及时间等维度,对车流量、车辆类型、拥堵情况等进行可视化展示,直观明了。3.2创新点(1)建设山西省高速公路路网交通流量流向大数据分析平台,填补了山西省高速公路路网、互通枢纽、收费站断面交通大数据流量、流向以及交通出行量分析等方面的空白,为公路规划设计、咨询服务以及业务需求等提供大数据平台,助力山西省交通强省

21、建设和交通2023年第10 期运输高质量发展。(2)首次提出基于山西省高速公路门架数据、收费数据等通过大数据、智能算法进行交通统计、分析和运行评估,分析与挖掘高速公路交通流量数据,并建立功能健全、数据准确的大数据分析平台,有利于全面掌握交通运行状况,为高速公路管理提供分析方法,为高速公路交通研究提供依据和新的思路 5。4结语建立一个全面、能够反映山西省高速公路路网交通流量情况的分析系统,对公路规划设计、建设设计、养护管理、运营管理都可实现相对精准的数据支撑服务,具有一定的应用价值。系统对交通流量的多维度分析有助于挖掘更深层次的关联关系和隐藏规律,为决策者提供多角度的决策依据,也有利于交通智能化

22、与大数据互相促进,推动行业信息化发展水平不断提升,具有广阔的应用前景。参考文献1白亚男.基于大数据的实时交通流预测方法研究 D.广州:广东工业大学,2 0 18:2 3.2陈子瑜.基于大数据的异常检测研究:以高速公路拥堵为例 D.福州:福建工程学院,2 0 2 2:17.3李成露.基于云架构的交通流量数据分析平台 D.南京:南京邮电大学,2 0 15:2 8.4陈玉飞.面向交通大数据的可视化系统关键技术研究 D.唐山:华北理工大学,2 0 2 1:2 7.5陈喜群,李俊懿.智慧城市交通系统若干共性关键技术与应用 J.浙江警察学院学报,2 0 2 3(2):1-9.(上接第156 页)参考文献1

23、Feng G.Implementation of Web data mining technologybased on PythonEB/OL.(2021-11-10)2023-01-16.https:/iopscience.iop.org/article/10.1088/1742-6596/2066/1/012033.2王辛浩,单艳.探究Python语言下网络爬虫的技术特点及应用 J.数字技术与应用,2 0 2 2,40(10):8 5-8 7.3王国华.基于python的豆瓣电影网络爬虫设计与分析 CJ/第三十六届中国(天津)2 0 2 2 IT、网络、信息技术、电子、仪器仪表创新学术会议

24、论文集,2 0 2 2:2 12-2 15.4张乐,孙怡芳.基于Python的运城旅游数据可视化分析 J.计算机时代,2 0 2 2(10):8 5-8 8.5赵蔷.基于Python爬虫的旅游网站数据分析与可视一160一化 J.电子设计工程,2 0 2 2,30(16):152-155.6黄岷昊,丁浪,张雪莲.基于Python的网络爬虫及文本可视化 J.电脑编程技巧与维护,2 0 2 0(7):2 4-2 5.7王子予,郝艳华,关涵文,等.基于Python网络爬虫技术可视化分析公众应对暴雪冻雨气象的反应.中华卫生应急电子杂志,2 0 2 1,7(6):37 9-38 1.8曾诚.基于Python的网络爬虫及数据可视化和预测分析 J.信息与电脑(理论版),2 0 2 0,32(9):16 7-16 9.9张刚亮,张凤玲.居民生活用电价格政策解读及监管 J.中国价格监管与反垄断,2 0 2 2(6):2 2-2 5.10毛源军,陈超强,舒一飞,等.基于居民用户用电行为分析的室内大麻种植检测 J.电力科学与技术学报,2 0 2 2,37(4):19 8-2 0 8.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 专业资料 > 其它

copyright@ 2008-2023 wnwk.com网站版权所有

经营许可证编号:浙ICP备2024059924号-2