网络空间安全概论 实验7网络爬虫 新冠疫情爬虫及词云与可视化地图_第1页
网络空间安全概论 实验7网络爬虫 新冠疫情爬虫及词云与可视化地图_第2页
网络空间安全概论 实验7网络爬虫 新冠疫情爬虫及词云与可视化地图_第3页
网络空间安全概论 实验7网络爬虫 新冠疫情爬虫及词云与可视化地图_第4页
网络空间安全概论 实验7网络爬虫 新冠疫情爬虫及词云与可视化地图_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

中国矿业大学计算机学院

且L级本科生课程报告

课程名称信息内容安全

报告题目新冠疫情爬只及词云与可视化地图

报告时间202263()

姓名丁文翔___________

学号08193072__________

任课教师曹天杰___________

2021-2022(二)《信息内容安全》评分表

试题类型

考核类别考核内容支撑课程目标与分值比分数

目标3:掌握信息内容安仝的基础知识,

课程报告(论文针对具体问题和要求选择正确的技术路

课程报告,

结课考核综述、设计、实线,通过在实验环境中进行仿真实验并能

100%

现、写作规范)根据算法特点进行攻击测试和综合性能

评价,得到具有参考价值的结论。

目标1:掌握信息内容安全的基本概念、

分类、原理和相关技术,能够根据课程基系统演示

1.基本概念、原

本知识对信息内容安全领域出现的问题及解说,

进行归类、分析、并有初步分析和解决问30%

题的能力。

目标2:掌握信息内容安全处理相关的理

PPT讲解

过程考核2.系统设计与论、技术以及健全的评价体系,能够根据

与答辩,

分析具体问题分析算法、设计算法、实现算法

50%

并能综合评价算法。

3.基本概念、作业或测

目标1

原理试,20%

过程考核:

结课考核与过程考核比例结课考核:60%

40%

评阅人:

2022年7月10日

报告摘要

始于2019年的全球新冠疫情,是人类百年工'也文明快速发展、全球化进程加快进程中突然

遭遇的重大传染性疫病,近3年来,己经改变、还在继续改变几十亿人类的生命、生活、

生态和生产方式。为了更百观的查看以及分析各地疫情,本项目将利用爬虫技术,爬取中

国各地以及世界各个国家的新冠疫情数据,生成词云,疫情地图等可视化图片或网页,供

用户观看。

关键词:爬虫;新冠疫情;疫情地图

Abstract

TheCOVID-19pandemic,whichstartedin2019,isamajorinfectiousdiseasesuddenly

encounteredinthecourseofrapiddevelopmentofindustrialcivilizationandaccelerated

globalization.Inthepastthreeyears,ithaschangedandcontinuestochangethewaybillionsof

peoplelive,live,andwork.Inordertoviewandanalyzetheepidemicsituationindifferent

placesmoredirectly,theprojectwillusecrawlertechnologytocrawltheCOVID-19epidemic

dataofdifferentplacesinChinaandothercountriesaroundtheworld,andgeneratewordcloud,

epidemicmapandothervisualpicturesorwebpagesforuserstowatch.

Keyword:crawler;COVID-19;Theoutbreakmap

报告正文

1、项目背景

正在发生的全球新冠疫情•,所造成的风险在公共化、全球化,给这个世界带来巨大的不确

定性,预示着人类文明发展存在总体性危机。

全球新冠肺炎疫情的爆发,使当今世界局势发生剧烈复杂变化,一场可能会影响全球格局

的巨大变革正在发生。各国采取不同的措施应对全球新冠肺炎疫情,美、欧、中等各经济

圈分裂的趋势在加强。以美国为代表的西方国家,从对外扩张转变为向内收缩或退守,体

现在本土主义的兴起、贸易保护主义的反弹以及其他一些“逆全球化”的迹象。面对突如

其来的全球性新冠肺炎疫情,西方社会的内部矛盾,包括经济与文化方面的问题,开始全

面爆发,民众的挫折与失望感越来越广泛。所谓“发达社会”,也呈现出一副失序状态:经

济失调、政治失序、安全失控、制度失灵。移民和难民大量涌入,对各国的本地传统价值、

生活方式以及民族认同都会造成冲击。经济利益的冲突与文化诉求的矛盾相互交织、彼此

纠葛,造成了西方社会严重的政治极化现象。

对中国这些发展中国家来说,外部环境变化的不确定性也非常明显。西方打破了现有国际

体系的稳定性,并导致国际体系出现快速、急剧的变化,这就给中国的外部环境带来巨大

挑战。如何处理与西方国家之间的问题、与国际秩序之间的问题,亦成为中国需要面对的

挑战。

同时,新技术革命,尤其是人工智能、生物技术的迅即发展,对现有的生产、劳动和消费

结构冲击,以及对文化变迁的深远影响,都可能超越既有“现代秩序”的有效框架,蕴含

着巨大的未知风险。

有专家指出,新冠肺炎疫情带来的这场全球性危机,不仅表现为生态和环境危机、资源和

气候危机,而且还表现为深重的经济、金融危机和社会危机。上世纪“二战”之后确定的

国际政治经济秩序在某种程度上处于内外交困的局面。世界正在滑向各种影响深远的冲突

和战争:军事冲突、贸易战争、政治和外交战、金融战争等等,世界很可能进入了一个“巨

变”的时期。

2、项目介绍

该项目使用了爬虫技术,通过url获取网页himl代码,保存为json文件,在json文件中提

取我们需要的数据,获取到数据之后,使用python库中的worldcloud制作词云图,pyeckarts

制作疫情地图

3、项目实现

3.1、使用爬虫获取数据

我们首先将使用requests方法获得整个网页的html代码,并保存为1x1文件,便于分析,

这里我们需要注意伪造一下请求头

classGet.data():

defget.data(self):

#“林url

url="https://voice.baidu.con/act/newpneumonia/newpneunonia/M

。伪装请求头

headers={

,User-Agent*:,Mozllla/5.0(WindowsNT16.6;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)1

,Chrone/8e.e.3987.149Safari/537.361

}

4发出get请求

response=requests.get(urlfheaders=headers)

n将请求的计i梨耳人文件.便于分析

withopen(*html.txt','w*)asfile:

file.write(response.text)

获得himl文件后,我们需要找到,我们需要的数据,下面蓝色的部分包含着我们需要的数

据,它是以字典和列表的来回穿插的形式保存的.我们通过取下标0和对应的键就可以获

得全部的疫情信息

.co«/i®/$tatlc/act/captaln/bun<lles/458/a6dc3ab®.<S9eW475.js-x/$cript><scrlpttype^^dpplicatlon/Json*

w<-,

ld»-captaln.coM19"><p49f:<tltXf:\u5b^\v65f6\u66f4\u65be\uffla\u^5be\u578b\u5U$\u72b6\u75c5\u6td2\u8eba\u7e8t\v75ab\u6ac5\v573e\v56ft'r

:口JhxTongJr:”8,•tvp«■:.mndoL.:・\u987八u9762".Y:8::•bXdu.co*V-ct\/ne«pceuBon£a\/rwvpn・u・oM»・.

-$har♦Oesc-:-\u5168\u56fd\u65be\u$78b\u51a0\u72b6\u75c5\uM»d2\u8eba\u7e8e\u5b9e\u65f6\u5738\u56fe\

“3har・TItl••:-\u5MQ\u63f6\u6"4\u65b叭u”S\u65b8\u578b\u51ae\"2b6\u75c八u6bd八u8Bb・\u788,\unab\u6«<:“u5738\u56f•・,・Shar“0g-:・http$:\八,・%•rn

a

.cdn.bcebos.coa\/MS-ros\/volc«fe\/captaln\/lMag«fi\/«cc4olbea447b66941«d(]59be5c2a81a.png?slze396*96"}v"coap<nent':({*backgroufMlColor*:*«89eac$"(

-

"titU-:*\u75ab\u68cS\uS09«\u6Sf6\u5927\u6S78\u6U«\u62«5\u544i*,"MpL>5tUpd3t«dTInt:-2922.06.2368:S9*r-c>stLi»f:({"conflr«td*:*1*.*e*r

,>-e>

■cru«d-:l-r*r«latlv«Tl»»-:16$574B8SB,'r-ccnflrMdR«latlvt*:*e-t*<11«<l^latlvt-:*e-r-cur«dR«lttlve:-e*,*5v«pto«atlcR«litlvt-:8\"asY^>to<iatlc-:-e*,

-n«tiveRa^tlve-z-O-.-screeninsPositlvt^-r.-upditeTiRe-z-USSUlW^cvrConfirB-z-e-.-curCon/lrwRtUtlvt*:-0-.

,<-*<<

-noMativeRel»tlveO>vs":\u8fdt\u7««d29\u«e2i\u67e8\u65te\u672c\u$71f\u65be\uS89t-.ovtr5<>5XnputRtUtlv«*:*ZlcuOi5>bl<>:l*t*area:-\u897f\u85€fr

-5vbllsf:(rcitv,:"\v62c9\v8428\"conflrMd-:-l\-dled*:-e-.*crved-:-l-.*conflr«edReUtlW:-r,-«sy«ptowticReX«tlYe',:',e\"asY»pto«stlc,:-e\

-B

-n«tiveRa«tlve-:e-.5cretftir^Positivt*:-r.*up<J»teTii»«-:-U55861W*r-cvrConfir»-:-e\

•noMatlvtRnttlveO«y$*:,\u8fdt\v7te<J28\u4t2»\v67e8\v65t«\v672€\v571f\u^5be\u589t-,,cltyC^f:"lBe\"«J4n9trovsArtes-:{-svblltf:()Z»ortUH>:**>}J,

,,

-d«ngtrovsAre«s-:4*sueLisf:()r-»ortUrl*:--}}r{-conflr»ed*:-W-,*died-:-e\"cru*d-:''83",reUtlveTl«t-:-16557^080O-.-confir«e<JReUtive:-5\

B,,,-"

•updateTl«f:-U5586e323***cur€onflr«:15%€vrConflriiRelttlvt":*5*,*noll>ti¥eRt\ttlvt0ay4":"-/cXtYC«df:29n",ovtrsMSlnputRtVttlvt*:**,

-lcu01sablee:-l*,*ar«a-:*\u6fb3\u95e8",esutt.iSt-:(),-dangtrousAr«a$-:<esubLl$f:(J,•■oreUrX-:­<>},{-conf-died-z-e-.^crutd^-W,

・eUtW・Tf:7655748808・Jcon"rxdh“tW”:・0..-<H“R,lNl“・:・6,・cu”dhlZW・・:・e,・“yipt8"lcmU"・:"8・J”Spto«0tlc・:・e・・

<*-e<e<e-

-natl¥«RtXatlvt*:e",*scr«tftln9Posltlv«:r.updat«Tli»«":*165586413^r*curConflr»:-e*.cuKonflr«Relatlve:e-.

--w

-noMatlvtR®latlveOay**:*\u8fd«\u7»e<ll\u4e2*\u6788\u65ee\u672c\u571f\u65b0\u589e\-overs«asInputReXitlve:-r-lcuOlfiable:l*,"ar<a-:>\u9752\u6d77".

,<w>w,w-w

"subList-:(rclty:"\u8y7#\u5Mlr"conflrB#d-:lS5-,*dl«d-:-e.cru«d*:-lM-r*conflrBedRetativt*:*e-."asy«ptOMtlcRel.«tlve:-e.a5ywptowtlc,:''e.

we->e

-natlYGRtXatlvt:e",*icr«tnln^Posltlv«*:r.up<Jat«Tl»«":-16558641S4-r-curConflr»:-0*.

"noM»tiveReUtlveO«ys*:*\u8f(lt\u7«edl\u4»2«\u670S\u65e9\u672c\u571f\u65be\u5S9e\-cityCod«*:*66\*dinflerou5Are«5-:{-»ubli5fzlJZBor^Url":**}},

e,-

<•city-"conflrB»dRtlatlvt*:*e-f*av»PtoaatlcRelitlve:'e*.«5y«ptOMtic*:*e",

-n^tlYeRelatlvt-:*e".•scree«insPosltlv«*:*r.,upd»ttTl»e":-165586413A-r"curConflr»":-•*.

"noMativ»ReUtlveO*ys-:*\u8fdt\u7«ed28\u«e2i\v67M\u65te\v672c\u571f\u65be\uS89t".,cityCode*:-6y-Z<J*«9«rousAr«»5-:{,5ubLisf:(].*ioreUrX-:-».

(•clty・:・\uW77\u4rc,・coc”eg・:・5・・・dlE-:・O・」cruX":・5・Jco"lrxdP0UtW,・:・6・・・”y・pS,“chUtW-・:・O・・・・sy«pto“tlc・:・O・・

-n«tiYeRe\«tlvt,':,6-.•scretninsPo»ltiv«*:*r.•up<l»teTli»«":•U55864134\"cvrConflr»*:M*.

•noMatlvtRelatIveOays*:,\u8fdt\u7ted2\u4e2*\u67es\u65«e\u672c\v571f\u65t)e\u5S9e・JSngMxsA””-:《rubl1st,:(<•>>,

<"city":,\u9ec4\u5357\v5<jdt\<€onflr«ed-:-4-,"died-r-e\-cru^-i^^-c^nflr^dRtXatlvt-^e-.-esyiptOMticReUtive-j-f.UariptOMtlc-j-e-.

然后我们使用xpath方法来解析数据

#生或HTML对象

ht«l=etree.HTML(response.text)

#解析故据

result=html.xpath('//script[ptype="application/json"]/text(),)

Uprint(type(result))

result=result⑻

Sprint(type(result))

result=json.loads(resul.t)

ffprint(type(result))

data_in=result['component'][0]['caseList']

foroachindata_in:

print(each)

print('\n-♦*28)

data_out=result['coaponent'][B]['globalList']

foreachindata.out:

print(each)

print('\n"+*28)

获得数据后,为了更加直观的观察数据和制作词云,我们将它们保存到data.xlsx的excel

文件中,下图可以看到我们成功保存国内各个省份的相大信息和以大州为分类的各个国家

信息

中国各个省份数据

省份;累计确诊汨::治愈现仃确诊素计确诊1死「:甫斌治愈增求现仃确诊增依

西藏13633b

83,00

海147'147o3

6,633

湾r

*3387061□480'137423316366U5o□6251

吞*335226*9396*63312弓30*59'171

货r-Fr

185i83*0

林666

4029540290

疆6333

新F

1008"1005rr

夏Qo3

宇"122'1226rQ33

2081'1893r2b39-37

什%81*679brQ6

天F-rr

1993i9771r

西33

423422r

宁63Q3

辽'1718'16966*b3

贬.F

L2987’13力973

海b33

南F一F

2886r282b63

河,007T7ri9986*brQ6

.西

T*3295r飞

3316F3*bo

南T2154sr

2164F6*b2&

广

西1649'16452rr

FbQo3

建F*333355

3389F430-i

海l29

33196o95方24724。2

北Fb

京Frl92▼-

36609^459r'19-14

江o

苏F0

F_T4

22390^235r

川F6Q6

FFl3

23633力347-1

东F26*b

^748r7力729lr

西Fbo

Fr1

1384'1382r

庆1

,63o3

?096F

bb-i

国内疫情|亚洲|就W|非洲|大洋洲|mbit洲南都|其他|热门(+)

亚洲国家数据

国家1累计确诊死亡治愈现有确诊累计确诊增量

朝鲜4672450飞4646380?5997[7260

韩国"182983411?4474"18129388"144479*9283

塔吉克斯占7388’124^72646

阿拉伯联*932067^30991258717171"1556

也门11824Z149*9108□67

老挝*210214?57号660201797

新甸613508"19434*592503"15714

叙利亚□59173150*52749’18飞

东帝汶*22945133力2796'166

吉尔吉斯攵0102429910964061627b

巧兹别克攵39895"1637士37791467

哈萨克斯,130601413663"1292200r2Q

土耳其150857421*98996149863404063

蒙古国92628221793132566108476

寒浦路斯491777‘1067"1243700663406

文莱158524025^1538874412缶2

孟加拉国"19580741%133"190598302958、74

4尔代夫1803843oo1163687163973

r

不丹□967421□9627066

巴勒斯坦□83293o356*5775274106

沙特阿拉1787212319176808739341143

r

约旦1697271‘14068,168296212416

印度尼西60729181’156702*590482531391'1678

r

亚美尼亚423104*86294126611814Ro

卡塔尔377482,78*372585*4219*662

阿塞拜疆793036©716*783181139飞

格鲁吉亚165875516838"16372934624

巴基斯坦"15324641^30384"1498401弓679‘113

|国内疫情欧洲非洲j大洋洲北美洲南美洲其他热门

实现代码如F

ws.in.title="国内投情”

ws_in.append(「省份,,,累计确诊L,死亡.,•治愈I•现有确诊L'累计确诊增童、,死亡培量、,治愈加篁1'现有碇/i■宣•])

foreachindata.in:

temp.llst=[each[•area*],each(•confirmed*],each('died(]feach[•crued*]feach[*curConf1m1*],

1

each('confirmedRelative']reach('diedRelative*),each('curedRelative],

each('curCorfirnRelative*]]

for1inrange(len(temp-list)):

iftenp_llst(i]=='•:

temp_list(i]=•€'

ws-in.append(temp.list)

换取国外疫情故树

foreachindata.out;

print(each)

print(M\n*♦*26)

sheet.title=each['area']

»剑建•个新的L件衣

ws.out=wb.create.sheet(sheet.title)

ws.out.appendCCaS,,•累计确诊L'死亡L•治愈l,现有确诊L,累计确诊塌量’])

forcountryineach['sublist,]:

,

list.temp=(countryl'country*],country!•conflrned']rcountry!'died*],country1*crued]r

country['curConfirm*]rcountry1,confirmedRelative*]]

for1inrange(len(llst_temp)):|

Ifllst_tenp[i]==":

llst.tenp[i]=<0*

ws-out.appGnd(llst_temp)

tcnp)

性像存excel文件

wb.saveC./data.xlsx*)

我们也将解析的数据保存到json文件中,方便以后做整个中国及每个省份地图和世界地图

做准备

defparse_data(self):

withopen('html.txt','r')asfile:

text=file.readO

#生成HTML对象

html=etree.HTML(text)

n解析故据

result=html.xpath('//script[Qtype="application/json"]/text(),)

ffprint(type(result))

result=result[8]

#json.loods力:注可以.资主竹中我化加ython数界类型

result=json.loads(result)

result=json.dumps(result('component*][0]('caseLisf])

ttprint(type(result))

withopen('data.json*,'w')asfile:

file.write(result)

print(,数据已写入json文件..J)

json文件如下:

8fd♦\S”d2\u“2・\u67B8\u65♦叭u“2c\uS71八u”be\u589,,・ci”Cod♦七,167\-dangtrousArtas-:{-sueLlst":(),•■oreUrf:■・”.{•city-:/*51,

U\uB425\u5”3,•confined*:"JIB".*dl«r:-8,*cru«d,:-21S-r-conflr«<dR®latlv«*:"asyaptOMtlcRalativs*:"G"r'asyaptoMatic**:/

^•nitlveReXatlve":,e\"scretninePositive":-O",*updeteTl®e-:-1655856563","curConflr*":・0・,•noMitlveReXitlveDiys-:/

L\u8fd♦\S”dl\u4e2"u6798n65•叭u672c\uS71八g5bO\u589e”,•cityCode":,281\*danqtrousAreas":{-subLlaf:(L•■oreUrl•:・・”.{•city":?

BM(

\*\u4t39\u4tlc",,conflntd*:"96,"<H",:*e".-czob:*77"r・gnfli“R010tl“•:-e,•:F,a$y«ptonatlc':?

%*n>tlveRelatlve":*e\"scretnln^Posltlve-:-6,・up(U“Tfxr-1655856563-.•curConflr®":・19,*noHetlveReletiveOeys,:?

%>\u8fd«\u7«od3\uS929\u65»8\u672c\uS71f\u»5be\u5B9«-r"8","dangtrousAroas*:••sutoLlsf:()r•■or^Url*:{•city*:・\gc88\v9633..)

M

%•conflr^d*:"246"redl®d":*e\-CPSCT-"6\*confIrMdRolative*:"G",*asyiiptonatlcRelatlvo*:-8,*asynptonatlc:*8","natlveRolatlv**:j

%-screenlngPositive,:“8,-upditeTlBe-:•U55S56563*.-curConflr»*:-0-r•:-\uSfde\u7e«d29\u5929\u65e9\u672c\u571f\u65W\uM9«-

e

^•cityCode*:,58"rdan9crousArtas-:C»uHlsf:(].-BoroUrl":•"}},Ccity,:"\u8fbd\u96Srr-conflrwd*:"12\"died*:"9",•crutd*:-12",‘

\*conflrMdRel«tiYe':"0".,•syuptOMtlcRelativf:・。,•e$yiiptoi«etlc-:*8\-netlveRelatlvt":•旷."scretnlnePosltlvt":*8\"updateTlue-:/

1655856563-.•curConflr«-:*0\*noH«ti*eRel«tlveOivs":,\u8fde\u7eed2\u4e2«\u6708\u65e0\«672c\u571f\u65b0\u589e-r,cltyCodt":*351\?

《・dang"ou“r"L:4-4ubllsf:[].•■oreUH-:->}r{"city*:"\u76d8\u9526\-conftrued-:-dl«d-:-8,•crutd*:"confXrn«<jRalatXvC:-0-,

^*aiynptoadtlcR«latlv«H:ee\"asyaptoeaxic*:*e*.*natlveReletive*:"0",•scrtenlngPosltlvt":"updeteTiw:"1655856563*,"curConflni":"6•,)

M-

%*noNatlveR«latlveOavs:•\u8fdt\u7t«d2\u4«21\u679S\u65«e\u672c\u571f\u65b8\u589e",•cltyCo-1«*:228"r•dan9arousArtas":{-subLlsf:[],"■orHIrl":)

U">>,<"city*:"\u672c\u6oaa\"conflr»«1":"5,PWcT:*e*,"cruad":・4・."conflrncdR«Xatlv»*:-6,*asyaptonatlcR«latlvt(*:,B3"asywptOflatlC:"6

%"nativeRelatlve*:"0",•scrtenlngPosltlte":•O"."updateTine,:"1655856563\"curConfIm-"I"."noHatlveRelatlveOays,:/

、・\v"d・\S・“l,\uS0g\u“2\"72uV/57”\M5b0\u5-3"eltyCode,:•dsn9.rovtAre..":<»«vbLi«f:[].-«or.Url»:•"»,<-clty*

温馨提示

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

最新文档

评论

0/150

提交评论