基于Python的国药网数据采集与分析_第1页
基于Python的国药网数据采集与分析_第2页
基于Python的国药网数据采集与分析_第3页
基于Python的国药网数据采集与分析_第4页
基于Python的国药网数据采集与分析_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

湖南商务职业技术学院毕业设计

目录

1引言............................................................................................................................1

1.1项目背景......................................................................................................1

1.2开发环境与工具..........................................................................................2

1.2.1Python简介..........................................................................................2

1.2.2Jupyternotebook简介......................................................................3

1.2.3Python第三方库简介..........................................................................3

1.2.4Pycharm简介........................................................................................4

2需求分析....................................................................................................................4

2.1可行性需求分析..........................................................................................4

2.2采集目标功能分析......................................................................................5

2.3关键技术分析..............................................................................................5

2.3.1网络爬虫技术.......................................................................................5

2.3.2文件存取技术.......................................................................................6

2.3.3可视化技术...........................................................................................6

3数据采集....................................................................................................................7

3.1采集页面分析..............................................................................................7

3.2字段分析......................................................................................................8

3.3编程实现......................................................................................................9

4数据清洗与处理......................................................................................................12

4.1数据清洗....................................................................................................13

4.2数据储存....................................................................................................14

5数据统计与分析......................................................................................................14

5.1数据准备....................................................................................................14

5.2数据展示....................................................................................................16

5.2.1依据品牌进行统计.............................................................................16

5.2.2依据生产厂家进行统计.....................................................................17

5.2.3据产商出产药品价格进行统计和分析.............................................18

I

湖南商务职业技术学院毕业设计

5.3综述............................................................................................................18

6小结..........................................................................................................................18

参考资料.........................................................................................................................19

II

湖南商务职业技术学院毕业设计

基于Python的国药网数据采集与分析

1引言

大数据时代的来临,人们的生活方式,消费习惯将有重大改变,企业为适

应时代需求其企业形象的塑造与推广更为重要。而中国现阶段趋同化,符号化

的设计一定无法满足企业的需求。而大数据对设计的颠覆性改变或许可以改变

这样的现状。

《大数据时代》作者维克托迈尔舍恩伯格给本设计展现数据变革的大时代。

数据变革顾名思义与数据有关,数据化由数字化而来,并基本取代数字化。数

据就像可再生能源一样,当数据的首要价值被挖掘后,数据仍能不断给予,本

设计看到的数据价值其实只是它的冰山一角。对于数据本设计有让其释放的方

式,比如本身的再利用,不同领域数据的整合,本身数据的扩展。当然数据也

如机器一样会折旧的,采集数据后要及时应用,数据废气也是可以应用的。大

数据时代的对社会的改变毋庸置疑是巨大的。通过对数据分析,获得其价值,

或对数据进行解析,拥有深刻的洞见,本设计还能发现事情发生的真相。转化

经济价值已经撼动生活的方方面面:商业科技、医疗、政府、教育、人文。对

于数据的需求样本已经不能满足,总体数据才是分析的基础,当然了,数据太

多,精度依然不再追求。越来越多的人意识到数据的财富和价值,利用数据做

更多的事

大数据时代,这是一个最好的时代,也是最坏的时代,勤于学习创造机会,

而不是等待机会的到来!

1.1项目背景

医药基于大数据的应用越来越受到行业的关注和重视,我们可以看到越来

越多的医药企业和研究机构通过大数据分析,发现了许多令人惊奇的新发现,

提高了自身的治疗和研发水平。首先,医药基于大数据分析的应用使得医生们

可以更快速地定位疾病和症状,更准确地进行治疗。通过分析海量和多维度的

数据,如病例记录、基因组数据、医疗设备数据等等,医生可以更好地诊断和

治疗疾病,提高治疗成功率。此外,大数据分析还可以帮助医生们实时监测病

情,并快速作出针对性的调整,更好地保障患者的健康。其次,医药企业可以

借助大数据分析,优化研发流程和提高新药研发速度。通过对历史病例和临床

试验数据的分析,医药企业可以更好地了解新药的研发进展和效果,并优化研

1

湖南商务职业技术学院毕业设计

发方案。此外,大数据还可以帮助企业了解疾病流行病学趋势和治疗流程,提

高新药的市场适用性和接受度。最后,大数据分析还可以帮助医药企业优化药

物销售策略。通过对市场和用户数据的分析,企业可以更好地了解市场需求和

用户偏好,从而制定更合适的产品策略和营销方案,提高市场竞争力。总的来

说,医药基于大数据分析的应用对于医疗和药物研发行业具有重要的意义。医

疗行业可以更加精准地诊断和治疗疾病,提高患者的健康水平;药物研发企业

可以更好地了解市场需求和用户反馈,提高研发效率和产品质量。预计,在未

来,医药基于大数据分析的应用会越来越深入,为行业和患者带来更多的价值。

涉及到药品信息有很多,本设计需要对网页进行解析。然后通过Python爬虫的

手段批量获取本设计想要的资料。

本项目就是针对普通医药公司的决策需要,然后爬取国药网网站药品数据,

对其进行处理,分析,然后可视化。繁杂的数据经过清洗加分析后,一目了然的将

结果呈现在高层眼前,公司的领导就可以讨论哪些产商是可靠的合作伙伴,现阶

段最需要进货哪些药品。所以本毕业设计部分包含数据爬取、清洗处理、储存、

可视化。

1.2开发环境与工具

1.2.1Python简介

20世纪80年代末,荷兰的龟叔(GuidoRossum)创造了Python。

Python是一种高级程序设计语言,广泛用于编写各种类型的软件,包括Web

应用程序、科学计算、人工智能、数据分析、游戏开发和系统管理等领域。Python

具有简洁、易读、易于学习、可扩展性强等特点,使得它成为了最受欢迎的编

程语言之一。Python还拥有大量的第三方库和工具,这些库和工具可以使开发

者更加便捷地编写代码。

Python有以下几个特点:简洁明了:可读性强,语法简单,与其他编程语

言相比,代码量较小,这使得Python易于学习和使用。面向对象编程:支持面

向对象编程,能够实现面向对象的封装、继承、多态等特性。强大的库和工具:

有非常强大的标准库以及丰富的第三方库和工具,能够简化编程过程,提高编

程效率。跨平台性:支持多种操作系统,如Windows、Linux、Mac等,因此可

以编写具有良好可移植性的程序。互动性:支持交互模式,具有交互式解释器,

能够快速、方便地测试和调试代码。可扩展性:可通过调用其他语言的代码扩

展Python的功能,也可以将Python代码嵌入到其他语言的程序中。非常流行:

2

湖南商务职业技术学院毕业设计

Python在科学计算、数据分析、人工智能、Web开发、游戏开发等领域被广泛

使用,拥有庞大的社区支持和开源项目,使得开发者可以快速地获取和学习到

相关技术。

现如今,人们用它开发简单的小脚本用来做文件的自动化处理或者开发一

些小网站打发无聊时光。这也突出Python的特点就是易学、第三方库足够丰富、

并且免费开源、支持跨多平台且可移植性比较强。

1.2.2Jupyternotebook简介

Jupyternotebook从本质上来说是一种应用程序,是基于网页的用于交互计

算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示

结果。还支持各种拓展插件,类似vscode。Jupyternotebook做数据分析太方

便了,它被设计就是为了科学计算的,可以支持Python、R、Julia、Scala等

多种语言编程,而且在浏览器上运行,对硬件要求不高,符合多数人的需求。

作为一款开源的web应用,jupyter在用户体验上可以说非常良心,不仅有简洁

的notebook,还有工作台式的lab,甚至平台化部署的hub。此外,文档还可以

导出为:HTML、LaTeX、PDF等格式。

Jupyternotebook在大数据方面应用比较广泛,特别适合用来做数据的清洗

和处理,在数据挖掘和可视化上的应用也是十分方便的。对于比较高层次的开发

人员来说,这个工具也可以用来做深度的机器学习。

1.2.3Python第三方库简介

Pprint:他的英文全称为Dataprettyprinter他采用分行打印的方式输出

数据结果。

requests:最友好的网络爬虫功能库,是Python实现的简单易用的HTTP库,

使用起来比urllib更简洁很多,Python第三方库在使用前要先进行安装。

Csv:csv属于python中的内置模块,它能够读取csv格式的文件或者将数

据存入到csv表格中。并且csv文件是表格和数据库中常见的文件操作格式。

NumPy:表达N维数组的最基础库提供直接的矩阵运算、广播函数、线性代

数等功能。是处理数组的Python库,NumPy库的数据结构比Python自带的更加

高效。

pandas:Python数据分析高层次应用库提,供了易用的数据结构和数据分

析工具,操作索引即操作数据。数据分析并保存为csv文件,python数据分析高

层次应用库,还可以进行数据清洗。

3

湖南商务职业技术学院毕业设计

matplotlib:高质量的二维数据可视化功能库超过100种数据可视化展示

效果;通过matplotlib.pyplot子库调用各可视化效果。wordcloud、scipy、

jieba:生成中文词云的。

1.2.4Pycharm简介

PyCharm是一款由JetBrains公司推出的Python集成开发环境(IDE),旨

在为Python开发提供全面的支持。PyCharm具有很多有用的特性,比如代码自

动补全、语法高亮、代码跳转、调试器、重构等功能,使得Python编程变得更

加轻松和高效。PyCharm还支持Python的各种科学计算库和框架,包括NumPy、

Pandas、SciPy、Django、Flask等。此外,PyCharm还提供了强大的版本控制

功能,支持各种版本控制系统(如Git、SVN等),方便开发者进行团队协作。

集成的单元测试:用户可以在一个文件夹运行一个测试文件,单个测试类,一

个方法或者所有测试项目。

可自定义&可扩展:可绑定了Textmate,NetBeans,Eclipse&Emacs键盘主

盘,以及Vi/Vim仿真插件。

代码分析:用户可使用其编码语法,错误高亮,智能检测以及一键式代码

快速补全建议,使得编码更优化。

Python重构:有了该功能,用户便能在项目范围内轻松进行重命名,提取

方法/超类,导入域/变量/常量,移动和前推/后退重构。

支持Django:有了它自带的HTML,CSS和JavaScript编辑器,用户可以更

快速的通过Django框架进行Web开发。此外,其还能支持CoffeeScript,

Mako和Jinja2。

支持GoogleApp引擎:用户可选择使用Python2.5或者2.7运行环境,

为GoogleApp引擎进行应用程序的开发,并执行例行程序部署工作。

2需求分析

2.1可行性需求分析

1、技术可行性

Python是面向对象语言中的一门通俗易懂的计算机编程语言,本次项目中

使用Python编写程序来实现数据获取,数据清洗预处理,数据可视化。随后通过

抓包分析,通过浏览器控制台获取请求和其参数。然后就可以得到网页面数据

的返回值。随后将爬取出来的原始数据暂时以csv格式储存起来,在后续的数据

4

湖南商务职业技术学院毕业设计

预处理和可视化中再进行调用。

2、项目可行性

医疗行业的数据应用一直在进行,但是数据没有打通,都是孤岛数据,没

有办法进行大规模应用。未来需要将这些数据统一收集起来,纳入统一的大数

据平台,为人类健康造福。政府和医疗行业是推动这一趋势的重要动力。。

本次项目通过采集国药网网站内的数据,来分析我国中西药品的药品信息。

本设计也将从药品品牌、生产企业、药品价格等方面对其进行深度剖析,分析出

有价值的信息,将其可视化最后根据结果得出结论。

2.2采集目标功能分析

本次项目的数据集的来源是国药网网站,通过python爬取国药网中西药品

所有的信息。数据清洗后共855条记录,爬取完成后尽可能的检查数据的准确性,

确定爬取出来的数据无误并且是属于国药网实时存在的药品信息。

分析国药网网站网页信息,明确本设计需要爬取的药品参数有商品名,品牌,

价格,商品编号,规格,批准文号,生产厂家等数据,在对原始数据进行预处理

后本设计会对其数据进行多个维度的分析。例如,从品牌的数量进行分析,查看

哪些品牌出品的药物数量多。又或者想要得到规格所有药品的生产厂家和药品

的价格。

2.3关键技术分析

2.3.1网络爬虫技术

在本设计日常生活中浏览网页通常都会遇到需要缓存在本地的数据,当数

量量比较小的时候本设计可以自己采取下载的方式去获得想要的数据,不过在

本设计的大数据领域一般用到的数据体量都是几个G甚至几个T的单位,这时

候本设计会采取网络爬虫的手段自动化的获取数据。

网络爬虫也被人们叫做网络机器人,只需要编写程序或者一些小脚本用来

自动的浏览庞大的互联网,并对想要的目标网页去进行数据的采集。当下常见的

一些网络爬虫按照实现的原理和技术结构一般可以分为:深层网络爬虫、增量

式网络爬虫、通用网络爬虫、聚焦网络爬虫等一些类型。

python爬虫能干什么?1:收集数据,比如你想批量收集竞品的商品信息、

销量数据,甚至估算总收入。可以通过python爬虫批量抓取,并自动提取结构

化信息,计算出来。2:批量生成内容,假如你新建了一个社区网站,冷启动时

5

湖南商务职业技术学院毕业设计

陷入了没内容就没流量、没流量就没内容的恶性循环,这时你希望利用其他网

站的内容批量导进来,那么可以利用爬虫来抓取并导入。3:实时监测,比如你

想第一时间知道商品降价信息,第一时间知道某商品上架了。python爬虫可以

帮你做实时监测,一旦检测到,可以立即通过短信、推送消息等通知到你。4:

抢票、抢限量商品,比如想抢火车票,或者抢挂某个医院的号,可以利用python

爬虫来做到手速最快,当然这也取决于你网络是否畅通,以及人家的安全措施

做的如何。

2.3.2文件存取技术

Pycharm导入csv模块如图2-1显示:

图2-1python内置csv模块

创建dataset.csv文件,将需要的字段信息录入,再使用for循环将字段

数据逐条导入。如图2-2显示:

图2-2导入数据

2.3.3可视化技术

爬取下来的数据通过预处理、保存为csv文件格式。本设计需要一种技术,

6

湖南商务职业技术学院毕业设计

根据本设计获取到的庞大数据将其通过统计学图形的方式展现在本设计眼前,

让本设计对其结果一目了然。这个就是数据可视化技术。

数据可视化是指在一个可视化的环境中表现数据,用一种既引人注目又容

易消化的方式组织数据,如图表或地图。从而帮助任何查看它的人更好地理解

该数据的意义。经过可视化的数据可以帮助人们更快、更轻松地从这些信息中

提取意义。数据可视化可以是静态的,也可以是交互式的。除此之外,还有时

间序列可视化——在一段时期内跟踪数据或性能的视觉效果。这在数据可视化

中十分重要,因为人们想要关注数据变量随时间产生的的变化。多年来可视化

的技术也逐渐发展成为了一下三类:科学可视化、信息可视化、可视化分析。

本次项目中仅仅只是将得到的数据用很简单的可视化手段实现数据可视化,

具体的就是用python第三方库matpoltlab去进行可视化,matplotlab中包含

了许多库,可视化图形呈现出来后对于结果自然一目了然,然后得出结论。

3数据采集

3.1采集页面分析

本设计首先通过edge浏览器搜索国药网的官方网页,然后进入主网页如图

3-1,其中URL为:/。点击中西药品,发现URL发生

了改变,变成了:/category_7,如图3-2。

图3-1国药网网站主页面

7

湖南商务职业技术学院毕业设计

图3-2国药网中西药品页面

按F12调出开发者工具,刷新页面,如图3-3。

图3-3开发者工具

利用全局搜索工具定位所需数据位置,点击开发者工具上面的Headers字

段,分析这是个什么请求,发现这个是一个GET请求。

3.2字段分析

本设计首先来到网页面打开网页的选择栏,然后将选择栏目定位到药品集

中的位置也就是定位到本设计所需要的数据所在的位置,然后跳出开发者工具

8

湖南商务职业技术学院毕业设计

页面刷新一下页面再进入,点击开发者工具界面上方的数据预览元素按钮,如图

3-4,可以看到本设计需要的品牌、价格字段信息在<div>标签下,规格、批准文

号、生产厂家等字段信息在<tr>标签下,本设计使用xpath方式来从HTML文本中

选取特定的标签和属性,本设计还得知他是GET方法响应的网站,所以本设计可以

根据以上特点通过Requests方法中的GET方法来获得响应的数据。将价格、品

牌、规格、批准文号、生产厂家等本设计需要的字段主句依次写入到csv格式

的文件当中。

图3-4分析数据类型页面

3.3编程实现

导入所需库。

图3-5导入所需库页面

编写代码试着爬取一整页的数据。

9

湖南商务职业技术学院毕业设计

图3-6爬取一页数据页面

继续逐个爬取所有商品数据。

图3-7爬取单个商品数据

代码实现如下:

10

湖南商务职业技术学院毕业设计

11

湖南商务职业技术学院毕业设计

源文件.rar

4数据清洗与处理

获得庞大的数据集之后本设计需要对数据进行预处理,也就是所谓的清洗

和检查,确定爬取过来的数据是否存在无效值和确实值,要保证数据的一致性,

这个对于信息质量的评估是一项很重要的任务。不仅如此,本设计需要将数据进

行有理化和有序化,这样子能够在数据调用共享过程中方便很多开发人员对数

12

湖南商务职业技术学院毕业设计

据信息的使用。

本次项目中本设计需要将爬下来的数据和网页原数据进行比对,并且检查

是否出现空值、错值,还有数据的位置是否正确。根据不同的需求本设计要对数

据进行不同的处理。

4.1数据清洗

图4-1数据清洗准备页面

经过比对和检查,发现数据存在缺失、空值,那么本设计根据需求将去除这

些包含缺失的数据,在notebook中用pd.DataFrame(df.dropna())来去除空值

的数据,数据清洗完毕后再将数据储存在dataset2.csv文件中。

13

湖南商务职业技术学院毕业设计

图4-2数据清洗完成界面

4.2数据储存

数据储存得方法有很多种,常见得可以直接用记事本格式储存(txt),或者

直接用其他文件的形式储存csv、excel、json等,本次项目本设计用到的是

csv。

如图4-3所示:

图4-3数据存储为csv页面

5数据统计与分析

5.1数据准备

导入相关库,使用pandas加载源数据,如图4-1、4-2。

14

湖南商务职业技术学院毕业设计

图5-1notebook准备页面

图5-2csv数据页面

打开PyCharmm软件,选择本地文件,加载通过清洗的源文件dataset2.csv,

使用WordCloud库制作并生成需要的图像如图5-3:

图5-3PyCharmm页面

15

湖南商务职业技术学院毕业设计

5.2数据展示

5.2.1依据品牌进行统计

图5-4数据展示页面

将中西药品所有的药品品牌进行汇总和分析,制作出词云图。从图5-4中

可以看出国药网中西药品的品牌分布,并且清晰的观察出同仁堂、仲景、信龙、

羚锐、本草纲目出现的频率最高,由老字号品牌引领众多品牌共同发展,百花

齐放。

优秀的品牌往往能够带动生产和消费,能让消费者产生情感共鸣,以此实

现价值链接。品牌出品的药物越多,说明品牌的影响力和自身硬实力越强,销

售方和消费者更愿意去买单。随着经济和网络的发展,消费者的需求和意向越

来越多越来越复杂,让许多新兴品牌开始飞速发展和崛起,来填补日益增长的

需求。品牌影响力决定着一个国家再全球产业价值链中的地位,一个国家拥有

的品牌越多,对价值链的主导力就越多。品牌是高质量发展的重要表现和象征,

加强品牌建设是满足人民美好生活需要的重要途径。

16

湖南商务职业技术学院毕业设计

5.2.2依据生产厂家进行统计

图5-5数据展示页面

从图5-5中可以看出来国药网中西药品的生产厂家大多分布在环渤海地区、

长三角地区、珠三角地区、中部地区和成渝地区,其中出现频率最高的是北京

同仁堂科技发展股份有限公司制药厂,其次是河南省宛西制药股份有限公司。

生产厂家所分布的地区大多是资源充足,已经形成了非常完善的从早期投

资立项到一步步管理的成熟体系。作为高端技术密集型药产业,对于人才和研

发能力要求较高,而上述五大地区对于人才的吸引以及本地较多的研究院所、

高校、实验室资源形成体系网络,构建了完善的生物医药创新体系和产业集群,

聚集了丰富的研发资源。生产厂家分布在此处有地理优势、资源优势、人才优

势,形成完好的良性循环,让企业发展的更好,成为行业中的佼佼者。

17

湖南商务职业技术学院毕业设计

5.2.3据产商出产药品价格进行统计和分析

图5-6数据展示

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论