基于Python的网络爬虫设计与实现_第1页
基于Python的网络爬虫设计与实现_第2页
基于Python的网络爬虫设计与实现_第3页
基于Python的网络爬虫设计与实现_第4页
基于Python的网络爬虫设计与实现_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

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

文档简介

基于Python的网络爬虫设计与实现能满足用户的具体需求,人们更加注重特定信息的搜索效率,网络爬虫技术应运而生。本设计先对指定URL的网址相关网页进行分析,找出网页内目标信息所在的URL信息规律;然后选择BeautifulSoup模块或lxml的html模块编写函数分级爬取这些URL;最后将URL对应的网页中的信息归类保存到文本文件中。然后利用jieba模块基于TF-IDF指标对爬取的文本中的信息进行分析,再找出词频高的词,做进一步分析。基于Py从腾讯新闻网中爬取疫情相关信息,同时根据相关信息绘制疫情分布图。两个爬虫实例表明本设关键词:网络爬虫,互联网,校园,疫情periodofbigdata,commonnetworksearchenginescannotsatisfytheexactneedsofusers,PeoplemoduleortheHTMLmoduleresponsetotheepidemicsituationcausmapaccordingtothe目录 1.1研究背景和实际意义 11.2研究现状 11.3研究方法和内容 21.3.1研究方法 21.3.2研究内容 2第2章基于Python的网络爬虫技术的相关方法 32.1网页分类 32.1.1静态网页 32.1.2动态网页 32.2正则表达式 3 42.4词云图生成 52.5数据管理 6 6第3章基于Python的校园网新闻信息获取与分析 73.1基于Python的校园网新闻信息爬虫实现 73.1.1网页信息获取 3.1.2版块新闻链接列表搜索 3.1.3版块新闻网页新闻内容获取 3.2基于Python的校园网新闻信息分析实现 3.2.1新闻信息数据管理 3.2.2新闻内容文本分词 3.2.3停用词删除 3.2.4高频词词云制作 3.2.4新闻内容词语分析 第4章基于Python的新型冠状病毒疫情爬虫实现 4.1每日疫情数据获取及曲线图绘制 4.1.1每日疫情数据爬取程序现实 4.1.2每日疫情数据曲线图绘制程序现实 234.2各地疫情数据获取及曲线图绘制 4.2.1各地疫情数据爬取程序现实 264.2.2各地疫情当前数据曲线图绘制程序现实 参考文献 32致谢 3311.1研究背景和实际意义21世纪初起,互联网得到了蓬勃的发展,万维网成为海量信息的载体,人们希望能够有效利用万维网里的数不胜数的数据信息,所以网络信息提取成为这一愿望实现的关键。网络世界里的信息成千上万,特别是近年来信息量呈指数增长,人们更加注重从互联网上搜索自己想要信息的效率。人们开始运用搜索引擎来帮助自己在互联网中查找所需要的信息。但是一个一般的搜索引擎必然存在着一定的局限性,不同背景、不同深度、不同领域的用户检索的期望信息一定是不同的,互联网用户只想快速找到自己所需求的信息,但一般的搜索引擎返回的搜索结果包含了庞大的无效信息。通用搜索引擎在一般情况下不能提供精准且专业的信息搜索,同时查准率低、无效信息多、也无法避免广告推送。因此一般的搜索引擎不可能满足特定用户的专业需求,对于这特等的用户需求则需要更加准确的搜素引擎,在大网络爬虫技术是一种个性化互联网数据信息搜索的网络数据信息获取技术。网络爬虫的英文名称为象的比喻就是蜘蛛(WebSpider)通过网线的颤抖(网页的链接地址)来搜寻食物(网页)。从任意一个网页(一般情况下是首页)开始,读取网页中数据,从这个网页里搜索其它链接的地址,通过所找的链接地址去找下一个网页。按照这种方式不断循环,直到所选取的网站里全部的网页全部抓取完为止。假定我们把整个互联网比喻成一个网站,网络蜘蛛就可以运用上述方法把互联网中一切的网页都抓取下来。在用大数据时代的到来,意味着更多信息涌入,想要在互联网这片大海中捞到想要的东西也愈发困难,所在这个节奏越来越快的世界中,网络爬虫凭借这高效这一点,就有着无穷的意义与价值。在上世纪九十年代在麻省理工学院一位叫Matthew的老师就研发出第一款有为核心的搜索引擎技术已经历经近30年的发展,网络爬虫已日趋多样。为满足不同用户不同的需求,人们开发了类型繁多的爬虫。但爬虫技术在西方世界迅速发展的情况下,2004年前我国内基本对于网络爬虫技术没有什么关注,从2005年开始国内才开始关注爬虫技术。目前需求量也是也来越大,急需这方面人才。虫或中型爬虫。网络爬虫开源系统喷涌式出现,因此人们研发一个简单的抓取系统变得不再困难,但是由于大量程序开源,使得很少有人愿意潜心研究网络爬虫的关键技术。因此在这种不良的环境下,小型爬虫2系统质量不高。所以对于中小爬虫的发展还网络爬虫应用宽度搜索技术,对URL进行分析,去重。网络爬虫使用多线程技术,让爬在学习使用Python软件的同时,复习网络知识,进而掌握基于Python软件的网络爬虫本设计拟对我校近几年新闻网页()进行分析,获取相关网页URL及网页文本内容,然后利用jieba模块基于TF-IDF指标对爬取的文本信息进行分析,找出新闻中同时针对今年对我国发生的新型冠状病毒肺炎疫情,利用动态网页获取方法从腾讯新闻网站()下载疫情分析数据,并绘制疫情相关图。第1章:介绍网络爬虫的历史背景和实际现状,阐述了本设计所使用的爬虫技术,简单第2章:介绍一些基于Python的网络爬虫的相关方法。第3章:校园网新闻信息获取的程序介绍,分析和运行结果的图片展示。第4章:新型冠状病毒疫情爬虫的程序介绍,分析和运行结果的图片展示。第5章:总结。3第2章基于Python的网络爬虫技术的相关方法互联网里众多网页主要将其分为静态和动态。当然静态是相对于动态而言的,比不是说静态就是一点不会变动的。在网站设计中,纯粹HTML(标准通用标记语言下的一个应用)格式的网页通常被称为“静态网页”,静态网页是标准的HTML文件,它的文件扩展名是.htm、.html,可以包含文本、图像、声音、FLASH动画、客户端脚本和ActiveX控件及JAVA小程序等。静态网页是网站建设的基础,早期的网站一般都是由静态网页制作的。动态网页URL的后缀不是.htm、.html、.shtm格式,而是以.aspx、.asp、jsp、.php、.perl、.cgi等形式为后缀,并且在动态网页网址中有一量,采用动态网页技术的网站可以实现更多的功能,如用户注册、用户登录、在线调查、用户管理、订单管理等等。同时动态网页实际上并不是独立存在于服务器上的网页文件,只有当用户请求时服务器才返回一个完整的网页。不只有HTML代码写出的网页被称为动态网页,这些网页一般由CSS,JavaScript代码和HTML代码一起构成网页,它们用Ajax动态加载网页的数据不一定出现在HTML代码中,这就需要复杂的操作。2.2正则表达式正则表达式概念:是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。其实就是一种规则。有自己特殊的应用。是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。1.灵活性、逻辑性和功能性非常强。2.可以迅速地用极简单的方式达到字符串的复杂控制。4re模块使Python语言拥有全部的正则表达式功能。比如:re.match尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。re.search扫描整个字符串并返回第一个成功的匹配。pile函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象。该对象拥有一系列方法用于正则表达式匹配和替换。compile函数用于编译正则表达式,生成一个正则表达式(Pattern)对象,供match()和search()这两个函数使用。re.findall方法能够以列表的形式返回能匹配的子串中文分词,即ChineseWordSegmentation,将一个汉字序列进行切分,得到一个个单独的词。表面上看,分词其实就是那么回事,但分词效果好不好对信息检索、实验结果还是有很大影响的,同时分词的背后其实是涉及各种各样的算法的。中文分词主要应用于信息检索、汉字的智能输入、中外文对译、中文校对、自动摘要、自动分类等很多方面。下面就以信息检索为例来说明中文分词的应用。例如:“制造业和服务类来处理,结果是检索“和服”的相关信息,会将他们都检索到,在信息量少的情况下,似乎还能够忍受,如果是海量信息,这样的结果就会令人讨厌了。通过引入分词技术,就可以使被当做一个词来处理,那么检索“和服”当然不会将它检索到,使得检索结果更准确,效率也会大幅度的提高。所以中文分词的应用会改善我们的生活,使人们真正体会到科技为我所用。从排序里取出预定前N个最优文本特征作为原始语料文本特征子集。基于词频和逆文档频率的TF-IDF算法是一种十分流行的文本特征选取算法。TF和IDF分别为词频和逆文档频率,TF-IDF是一种常用的加权指标,多用于信息检索与数据挖掘。基于TF-IDF的特征选择思想是:如果某个词在某篇文章中出现的频率很高,在其他文章中出现的频率相对较低,那么就说明这个词在这篇文档中比较重要,即可作为这篇文章的一个分类特。5文档频率值越低。某词语在某特定文件内的高词频,以及其在整个文件集合中的低逆文档频率,可以得出较高的TF-IDF值。基于TF-IDF指标可以过滤掉语料库文档中普遍出现的词语,保留在某些文档中出现频次较高的具有丰富分类特性的重要词语(后文简称特征词)。在现在互联网信息时代,我们能在各种手机app或计算机网页上看见各式各样的词云图,词云图可以帮助我们从庞大且杂乱的信息中提取出现概率最高的词,让使用者更加清楚且直观的看到有效信息。词云库把词云当作一个对象,WordCloud()是一个文本中与其相对的词云。本设计依据词语出现频率高低的来绘制图片,同时设定词云图的大小、样式、颜色等。wordcloud=WordCloud("simhei.ttf",)wc=WordCloud(font_path=fontpath,#设置字体路径max_words=1000,#词云显示的最大词数6max_font_size=100,#字体最大值min_font_size=10,#字体最小值random_state=42,#随机数collocations=False,#避免重复单词max_words=200#要显示的词的最大个数mask=aimask,#造型遮盖放缩才有效)word_frequence={x[0]:x[1]forxinwords_count.head(50).values}#words_count前50行数据,即词频前50的词汇word_cloud=wc.fit_words(word_frequence)#根据词频生成词云plt.figure(dpi=50)#通过这里可以放大或缩小plt.axis("off")#隐藏坐标plt.imshow(word_cloupandas提供了大量能使我们快速便捷地处理数据的函数和方法。DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表DataFrame函数是创建一个二维表,传入参数,是所存放的数据。BeautifulSoup支持Python标准库中的HTML解析器,还支持一些第三方的解析器。BeautifulSoup最主要的功能是从网页抓取数据。soup=BeautifulSoup(article_doc,'html.parser')利用BeautifulSoup模块的find_all()函数搜索新闻信息。将相关信息按指定顺序存入文本文件。soup=BeautifulSoup(listpage,'html.parserf)#利用BeautifulSoup模块利用标签a的两个属性(href和class)找该对应的链接条件7第3章基于Python的校园网新闻信息获取与分析依照用户设定的规则获取互联网网页中的文字,图片或者一切内容的一组程序或脚本就是网络爬虫,网络爬虫的重要作用简单来说就是让互联网网页的内容下载到本地从而本地有了一个镜像备份。时至今日互联网爆炸的时代,几乎所有网页都会提供给互联网网民们大量的信息,但是这些庞大的数据中大部分都是用户不需要的,就算是专门搜索或者在相关的主题网页中,想要找到用户心仪的信息也是十分困难的。在庞大的数据下需要互联网用户一个一个去鉴别,这是十分费心费力的一件事。所以,就可以专门设计一个符合用户需求主题的爬虫进行精准搜索,方便快捷地获取用户需要的数据。主题网络爬虫就完美的符合用户需要。高网速大数据的今天,主题网络爬虫在Web应用中的地位将越发重要甚至是不可代替。网络爬虫第一步选择爬取对象的链接地址(即URL),将URL放置在待爬取的队列里;第二步从待抓取URL队列里读取一条URL接着进行DNS解析,下载网页内容;第三步分析网页内容,从中搜索符合特定要求的数据,并按指定格式保存;第四步对数据进行分析处理。女女y数据分析处理图1本章网络爬虫和数据处理流程本章首先利用利用网络爬虫技术从我校校园网的校园新闻和综合新闻两个版块下载、搜索新闻;然后对新闻进行分词处理,分析其中新闻高频词。利用网络爬虫技术从我校校园网的校园新闻(网址:两个主页下载相关新闻网址链接表。利用request模块从每个新闻链接中下载新闻并按指定格式保存到文件中。图2是以校园新闻版块为例的信息爬取流程图。综合新闻版块新闻爬取方式相同。设计8中利用ThreadPool模块将两个版块主页网址输入ThreadPool对象的map函数,由系统并行搜#两个新闻版块爬取链接FILE_CONFIGS=[['/CampusNews/list,xyxpool.closeO#关闭进程池(pool),使其不再接受新的任务pooljoinO#主进程阻塞等待子进程的退出,join方法要在close或terminate之后使用飞女文图2校园新闻版块信息爬取流程图根据流程,编写主函数main()程序。偌max_file=300#最大文件数'accept':'text/html,application/xhtml+xml,application/xml;q=0.9,im'accept-language':zh-CN,zh;q=0.9,Y537.36(KHTML,likeGecko)Chrome/71.0.3578.98Safari/537.36defmain(config):#全局默认编码#信息链接地址URL#文件名9#文件夹#获取每类别的网址网页内容total_page=get_totalforiinrange(total_page):#遍list_page_url=url+'page_{page}.html'.format(page=page)#获取该类其中一页的链接list_doc=get_html(list_page_url)#获取该类其中一页的页面信息iffile_name=='xyxw':article_urls=get_article_urls(list_doc,ftype)#提取该类其中一页中各个链接article_doc=get_html(article_url)#提取每类每个页面中的信息ifarticle_doc!=":#将爬取信息中特定信息存入文件中flag=save_article(article_docifflag:print(保存%s类第%d个文件%(file_name,file_num))iffile_num>max_file:#每类信息最多保存500个文件breakiffile_num>max_file:break本设计实现爬取的关键程序流程图如图3开始是total_page=get.totd_page(doc)是是是fle_path=dir_path+file_name+tr(fle_num)+'t是利用reqests模块获取指定网址URL的页面信息。设置了最大重试次数为3次,如果3次请求目标URL都失败则抛出异常。对于请求返回的状态码为200的响应,将以字符串的形式返回请求到的页面HTML代码。具体代码如下:session=requests.sessionO#开启会话,可以跨请求保持某些参数session.mount('https://,HTTrequest=requests.get(url=url,headers=HEADERS,timeout=30)#根据网址和HEADERS请求request.close()#关闭请求ifrequest.status_code==200:request.encoding="utprint('无法获取文件信息)败请本hy图4网页信息获取流程图3.1.2版块新闻链接列表搜索利用BeautifulSoup模块和re模块从校园新闻和综合新闻两个版块主页中获取总页数和各自的子网页链接地址列表。每个版块总页数只需要用re模块的findall()函数,找到其中匹配的参数即可。代码如下:defget_total_page(doc):#从doc字符串中提取出页码和总页数fdefget_article_urls(listpage,ftype):#获取链接地址列表base_url='https://www.sontan.edelse:#综合新闻base_url='https://www.sontan.soup=BeautifulSoup(listpage,'html.parser)#利用BeautifulSoup模块#利用标签a的两个属性(href和class)找该对应的链接条件urls_tree=soup.find_all('a,href=pile(/CampusNews/'),celse:#综合新闻urls_tree=soup.find_all('a',href=pile(/GeneralNews/'),cifurl.startswith('http'):#以http开头的字符串(即链接地址)article_urls.append(base_url+url)#不以http开头的字符串,则基地址+链接目标网址目标网址提取页码和页数图5地址链接流程图3.1.3版块新闻网页新闻内容获取用re模块的findall()函数搜索新闻标题和发布日期,利用BeautifulSoup模块的find_all()函数搜索新闻信息。将相关信息按指定顺序存入文本文件。具体代码如下:defsave_article(article_doc,article_url,file_pattitle=re.findall(regex,article_doc,re.DOTALL)[0]#寻找h1标签的内容,即文章的标题datas=re.findall(regexd,article_doc,re.DOTALL)[0]#寻找日期soup=BeautifulSoup(article_doc,html.parser')#利用BeautifulSoup模块elements=soup.find_all(p',style=riflen(elements)>0:element=str(element.text)#获取每一簇信息withopen(file_path,'w',encoding=CODE)asf:#按指定顺序写入文件f.write(content+"n')#第三段:信息主题f.writelines(article_url)#最后一段:信息的链接地址defdelspace(string):#去除中文之间的空格保留英文之间的空格string=string.stripO#移除字符串头尾指定的字符(默认为空格或换行符)或字符序列pattern=pile(r'([u4e00-\u9fa5]+)s+([u4e00-\u9fa5]+)s+')#^s'用于匹配空白字符目标网址目标网址获取新闻标题获取新闻发布日期图6获取新闻流程图3.2基于Python的校园网新闻信息分析实现针对3.1节利用网络爬虫技术获取的校园新闻和综合新闻两个版块的相关新闻信息文件,将新闻文字进行数据管理、分词、停用词删除、统计和制作词云等操作(如图3所示)。图7校园新闻版块信息分析流程图校园新闻和综合新闻两个版块所在文件夹内的所有文本文件数据进行收集处理,按类别、标题、日期和内容进行管理。先将字符串生成字典,再将文件存为DataFrame格式。具体代码如下:deftext_processing(folder_path):forfolderinfolder_list:#遍历每个子文件夹new_folderpath=os.path.join(folder_path,folder)iffolder=='xyxw':#根据子文件夹,生成新的路径#放子文件夹下的txt文件的列表path=os.pathjoin(new_folder_path,withopen(path,mode='r,encoding=CODE)asf:#读取每一段,顺序将与DataFrame列名对应data_dict=dict(zip(COLUMNS,data))#用zipdf_news=DataFrame(data_dict,index=[0])#DataFrame类的方法,将键字作为列名df_news.to_csv(news_docu.txt,index=False,header=False,m#读取出文件中的数据,以COLUMNS,为列名df_docs=pd.read_csv('news_docu.txt',names=CO#数据清洗:如果某条数据有缺失值(na数据)直接删除整条数据df_docs=df_docs.dropna()returndfdocs图8数据管理流程图必须有实际意义的写。利用开源的分词器 jieba分词器支持基于TF-IDF对新闻内容分词。jieba利用jieba分‘content’列进行分闻序df_docs['content].values.tolist()#jieba分词需要list格式current_segment=jieba.lcut(line)#分词,返回列表图9分词流程图3.2.3停用词删除defdrop_stopwords(cifwordinstopwords:#判断是停用词则不追加#判断不是停用词,则追加#判断不是停用词,则以字符串形式追加,用于词云#追加该行“有效词”make_wordcloud(all_#制作词云图N图10停用词流程图针对3.2.2得到的新闻信息中的分词,利用DataFrame类型数据的padas方法进行分析统计,再利用开源库WordCloud绘制50个高频词词云图。defmake_wordcloud(all_words):cy_num=50#词图中的最高频的词条数df_all_words=pd.DataFrame(f'all_words'all_words})#由列表生成DataFr#先分组all_words,再分类统计计数size,通过分组计数,统计每个词出现的次数words_count=df_all_words.groupby(by=[all_words'])[all_words'].agg(nuwords_count.columns=[count]#将每个词的词频数据words_count列名换为count#以count列降序排列words_count=words_count.reset_index().sort_values(by=["count"],ascen#设置词云图片参数,生成词云对象wordcloud=WordCloud(font_path="./files/simhei.ttf",background_color="white",max_font_size=80)word_frequence={x[0]:x[1]forxinwords_count.head(cy_num).values}wordcloud=wordcloud.fit_words(word_frequence)#根据词频生成词云图数据wordcloud.to_file(wordcloud_songtian.png)#生成词云图print('n根据新闻中词频最高的{num}个词制作的词云图:'format(num=cy_num))plt.show)参加了居动十“要上我院田发展建制长院校学表议代会任去燃落实图11校园新闻信息高频词词云图3.2.4新闻内容词语分析针对某一新闻页面内的有效新闻信息进行分析,利用jieba.analyse.extract_tags方法基于TF-IDF算法从中选取指定数量的关键词。具体代码如下:defword_seq(df_docs,contents_drop,index):print(以下是第{index}号记录的内容及其高频词\n'format(index=index))print(df_docs[content].values.tolistO[index])#index记录号的内容print(^n网址:'+df_docs[url].values.tolist()[indexJ)#index记录号的网址contentsstr="".join(contentsdrop[index])#index记录号的内容分词#利用jieba第三方库提取#index记录号内容的分词,显示前topK=c_num个print("".join(jieba.analyse.ex程序运行结果图如图12:ereFisdhethesbeeebulltsutcessFully.校 图12第4章基于Python的新型冠状病毒疫情爬虫实现针对今年对我国发生的新型冠状病毒肺炎疫情,利用动态网页获取方法从腾讯的新闻网站()下载疫情数据,将数据归类统计,并绘制疫情数据曲线图。为导入疫情数据,对数据进行分析和图形绘制,先导入requests、json、time、datetime、新型冠状肺炎病毒疫情数据爬取目标网站是腾讯新闻,该网站提供疫情实时追踪数据。如图6所示,先request.get()方法从腾讯新闻公布疫情新闻数据所在的网址url='/g2/getOnsInfo?name=wuwei_ww_cnnt(time.time)*1000)中爬取数据;再利用json.loads()方法将数据转换为易于操作的字典类型;然后利用pd.DataFrame()方法将爬取来的数据形成每日疫情二维数图13每日疫情数据爬取流程4.1.1每日疫情数据爬取程序现实url='/g2/getOnsInfo?name=wuwei_ww_cn_day_codata=json.loads(requests.get(#数据动态网址#爬取的数据#以键字date升序排列#创建数据二维表,指定列名#初始化变量month,day=item['date'].split(/)#获取月和日期rq=datetime.strptime(2020-%s-%s^%(month,day),"%Y-%m-%d)#获取日期sw=int(item['dead]))#死亡数data_day.loc[loc]=[rq,qz,ys,zy,sw]#将数据为一行下面图14是运行结果:_ltst置置5Glmnt日期,填有,疑机数,进有救,死亡期4-6▶m:graduatjongrujectyiqingveneps_u配而葡病雨jom.(12)(di(图144.1.2每日疫情数据曲线图绘制程序现实基于4.1.1程序爬取的数据包,导入matplotlib.pyplot和matplotlib.dates模块包,编写每日疫情数据曲线图绘制程序如下:#图标题#绘制确诊数plt.plot(date_list,suspect_list,label='疑似数)plt.plot(date_list,heaplt.plot(date_list,dead_list,label='死亡数)plt.rcParams[xtick.direction']='in'#把刻度线设置在图的里面plt.gca().xaxis.set_major_formatter(mdates.DateFormatter(%m-%d')#横轴格式#显示网格#显示图例#保存为文件确认图表标题确认图表标题尺寸绘制疫情相关自动保存生成图片图15绘制流程图运行上述程序,得到如图16的2020-每日疫情曲线图。2020-每日疫情曲线图16数)。由兰色曲线可知从3月份全国确诊数上升很慢;2月到4月绿色治愈数曲线上升很快;红色死亡数曲线在确诊数上升期延后10上升较快,后趋于平稳,表明医疗技术的作用显现;黄色疑似数曲线在3月份是高峰,随之下降。从图中看出从一月二十四至二十五号开始,确诊数和疑似数开始猛增。二月八号开始疑似数开始明显下降,治愈数显著升高。可见一月二十四号至二月八号是抗战疫情最为激烈的时期,二月二十九号开始确诊数开始明显降低,说明疫情逐渐得到控制,专家们所说的拐点即将到来。从图表中我们也可看出至四月份死亡数没有明显增长,代表着抗击疫情一线的英如图17所示,先request.get()方法从腾讯新闻公布疫情新闻数据所在的网址url='/g2/getOnsInfo?name=disease_h5&000)中爬取数据;再利用json.loads()方法将数据转换为易于操作的字典类型;然后利用pd.DataFrame()方法将爬取来的数据形成各地疫情二维数据。图17各地疫情数据爬取流程url='/g2/getOnsInfo?name=disease_h5&calldata_toal=json.loads(requests.get(u#国内各省市分布#省级统计ys=int(item[total']['#地市统计ys=int(item_ds[total']['运行程序得到data_china_sf和dat运行结果如下图18:AA校14"namm*中压,"tatay"《…),"tatal*:(-),childre'=1-1)1data_ch1Ist54【K'name':"照虚过,today':(…),otal…}。chlldren"(…D),(nan…(olumnnanes:地币,确给数,好似费,估殖勤,死亡数Calummnangs:首份。确论封,经从Columnamit:国家,确的费,疑想data_de]4st7It'namn':操外铺入todsy*:(…),total':[…]),(mame:银川,today:单国1temdkrtA('nane'i*宁度",'today'('confirm'ie,"conflrucuti'ie,"isvodated"tfalse…('nane':宁东雷卖会",'today':{'confimtB,conftrCuts'i,"spatdF…f11111宇东领费金ttes:Aels.qn.cos/2/atOInfsneiseeIh图18Permlssians:RWEnd-ofines.cfEnco4.2.2各地疫情当前数据曲线图绘制程序现实plt.xticks(xz,xtk,color='black,rotatplt.xticks(xz,xtk,color='black,rotat运行上述程序,得到如图19和图20的2020-国内当日各省市疫情曲线图和2020-国内当图202020-国内当日各地市疫情曲线图从各地市当日疫情曲线图可看出,湖北武汉确实是疫情爆发的中心,封禁湖北武汉为无奈之举,但确第5章总结本设计运用网络爬虫算法设计编写了爬虫系统程序,并爬取了广州大学松田学院校园网 ()的校园新闻和综合新闻两个版块的相关新闻信息文件和腾讯新闻网()的动态网页获取疫情数据信息,进行处理分类,将数据归类统计分析,并绘制词云图和疫情数据曲线图。从过程与结果来看,网络爬虫能够改善互联网用户搜索信息的体验与感官,减少不必要的信息摄入,节省上网搜索时间,高速提取互联网中参考文献[1]王蕾,安英博,刘佳杰.基于Python的互联网金融数据采集[J].合作经济与科技,[2]舒畅,黎洪生.使用Python实现基于Web的水资源[3]刘洪志.利用Python批量获取互联网中的桌面壁纸[J].电脑编程技巧与维护,[5]王芳,张睿,宫海瑞.基于Scrapy框架的分布式爬虫设计与实现[J].信息技术,[7]魏冬梅,何忠秀,唐建梅.基于Python的Web信息获取方法研究[J].软件导刊,[8]任迪,万健,殷昱煜,等.基于贝叶斯分类的Web服务质量预测方法研究[J].浙江大学学报(工学版),2017,51(6):1242-1251.[11]NurulAfiqahMatIntegrationofsystemdynamicswithbInternationalStudentProj致谢时光荏苒,大学四年的学习生活即将结束,四年间的回忆仿佛还在眼前,老师们的教诲与指引,辅导员们的帮助与开导,同学的鼓励与支持,父母的期望与赞许,这些都会让我积极进步。大学四年时光我是快乐和充实的,自己很幸运能结识这么多的良师益友,希望祖国繁荣强大,师长们身体健康,同学们前程似锦,感谢自己人生路上的每一个人。捷键与一些电脑小技巧这是高手最常用的第一快捷组合键。这个快捷键组合可以将桌面上的所有窗口瞬间最小化,无论是聊天的窗口还是游戏的窗口……只要再次按下这个组合键,刚才的所有窗口都回来了,而且激活的也正是你最小化之前在使用的窗口!个更简单的办法,就是按winkey+r!选中自己希望要打开的窗口,松开这个组合键就可以了。而alt+tab+shift键则可以反向显示当前打开的窗口。当你需要打开资源管理器找文件的时候,这个快捷键会让你感觉非常“爽”!再也不用腾出一只手去摸鼠标了!winkey指的是键盘上刻有windows徽标的键●。wi键盘,这种键盘在原来101键盘的左右两边、ctrl和alt键之间增加了两个windwos键和一个属性关联键。107键盘又称为win98键盘,比104键多了睡眠、唤醒、开机等电源管理键,这3个键大部分位于键盘的右上方。F10或ALT放入回收站激活当前程序的菜单栏在win9x中打开关闭程序对话框删除被选择的选择项目,如果是文件,将被放入回收站删除被选择的选择项目,如果是文件,将被直接删除而不是新建一个新的文件保存当前操作的文件剪切被选择的项目到剪贴板CTRL+INSERT或CTRL+C复制被选择的项目到剪贴板SHIFT+INSERT或CTRL+V粘贴剪贴板中的内容到当前位置ALT+BACKSPACE或CTRL+Z撤销上一步的操作ALT+SHIFT+BACKSPACE重做上一步被撤销的操作Windows键+D:最小化或恢复windows窗口Windows键+U:打开“辅助工具管理器”Windows键+EWindows键+R重新将恢复上一项操作前窗口的大小和位置打开资源管理器打开当前活动项目的快捷菜单在放入CD的时候按下不放,可以跳过自动播放CD。在打开word的时候按下不放,可以跳过自启动的宏关闭当前应用程序打开程序最左上角的菜单切换当前程序一个窗口)在IE中:切换当前程序将windows下运行的MSDOS窗口在窗口和全屏幕状态间切换将当前屏幕以图象方式拷贝到剪贴板将当前活动程序窗口以图象方式拷贝到剪贴板关闭当前应用程序中的当前文本(如word中)切换到当前应用程序中的下一个文本(加shift可以跳到前显示前一页(前进键)显示后一页(后退键)在页面上的各框架中切换(加shift反向)刷新强行刷新2.删除以下文件夹中的内容:x:\DocumentsandScttings\用户名\LocalScttings\Temp\下的所有文件(用户临时文件)x:\DocumentsandSettings川户名\L件(页而文件)x:\DocumentsandSettings\用户名\LocalSettings\History\下的所有文件(历史纪录)x:\DocumentsandSettings\用户名\Recent\下的所有文件(最近浏览文件的快捷方式)x:WINDOWS\Temp\下的所有文件(临时文件)x:WINDOWSiServicePackFiles(升级spl或sp2后的备份文件)x:WINDOWS\DriverCache\i386下的压缩文件(驱动程序的备份文件)x:WINDOWSSoftwareDistribution\d头的隐藏文件4.然后对磁盘进行碎片整理,整理过程中请退出一切正在运行的程序点”(最好以当时的口期作为还原点的名字)7、在各种软硬件安装妥当之后,其实XP需要吏新文件的时候就很少了。删除系统备份文件吧:开始→运行→sfc.exe/purgecache近3xxM。(该命令的作川是立即清除"Windows文件保护"文件高速缓存,释放出其所占据的空间)8、删掉\windows\system32\dllcache下dll档(减去200——300mb),这是备用的dl档,只要你已拷贝了安装文件,完全可以这样做。9、XP会自动备份硬件的驱动程序,但在硬件的驱动安装正确后,一般变动硬件的可能名称为driver.cab,你直接将它删除就可以了,通常这个文件是74M。都合适白己的使用,比如IMJP8_1H文输入法、IMKR6_1韩文输入法这些输入法,如果用不着,我们可以将其删除。输入法位于windowsime\文件夹中,全部占川了88M的空12、另外,保留着\windows\help日录

温馨提示

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

评论

0/150

提交评论