爬虫大数据采集与应用,大数据 爬虫

  爬虫大数据采集与应用,大数据 爬虫

  Web crawler: Web crawler(在FOAF社区中也称为web spider、web robot,更常被称为web chaser)是一个程序或脚本,它根据一定的规则自动从万维网上捕获信息。其他不常用的名称有蚂蚁、自动索引、模拟器或蠕虫。

  以上是网络爬虫的百度,下面开始介绍使用Python进行网络爬虫来获取数据。

  用于获取新冠肺炎的实时数据。

  使用PyCharm工具。

  创建一个新的Python文件,并将其命名为get_data

  使用爬虫最常用的请求模块。

  第一部分:

  获取网页信息:

  导入请求URL= https://voice . Baidu . com/act/new pneumonia/new pneumonia response=requests . get(URL)第二部分:

  您可以观察数据的特征:

  数据包含在脚本标记中,xpath用于获取数据。

  从lxml导入etree导入模块

  生成一个html对象并解析它

  可以得到一个list类型的内容,使用第一项就可以得到所有的内容。

  接下来,首先获取component的内容,然后使用json模块将字符串类型转换为字典(Python数据结构)。

  要获得国内数据,您需要在组件中找到案例列表。

  接下来,代码:

  from lxml import etreeimport json#生成HTML对象HTML=etree.html(response . text)result=HTML . XPath(//script[@ type= application/JSON ]/text())result=result[0]# JSON . load()方法可以将字符串转换为python数据类型result=JSON . loads(result)result _ in=result[ component ][0][ caselist ]第三部分:

  将国内数据存储在excel电子表格中:

  使用openyxl模块,导入openpyxl

  首先,创建一个工作簿,并在工作簿下创建一个工作表。

  接下来,命名工作表并赋予其属性。

  代码如下:

  导入pyxl #创建工作簿wb=openpyxl。workbook()# create worksheet ws=WB . activews . title=国内疫情 ws.append([省,累计诊断,死亡,治愈,已有诊断,累计诊断增量,死亡增量,治愈增量,已有诊断增量)地区-主要省辖市-城市确诊-累计累计确诊-值域相对时间-确诊相对-累计确诊增量相对值域增量curConfirm -已有城镇curConfirm relative-已有真实增量 for each in result _ in:temp _ list=[each [ area ],each[确诊]]/data.xlsx)第四部分:

  在excel中存储外来数据:

  获取组件的全局列表中的外来数据。

  然后在excel表格中创建一个工作表来代表不同的洲。

  代码如下:

  data _ out=result[ component ][0][ global list ]for each in data _ out:sheet _ title=each[ area ]#创建新工作表Ws _ out=WB . Create _ sheet(sheet _ title)Ws _ out . append([ country ,累积诊断, death , cure ,现有诊断,累积诊断增量])for Country in each[ sublist ]:list _ temp=[Country[ Country ],Country[ confirmed]Country[ dead ],country[crued],Country/data.xlsx

  从什么是导入etree导入JSON导入打开pyxl URL= https://voice。百度一下。新肺炎/新肺炎响应=请求。get(URL)# print(响应。正文)#生成超文本标记语言对象html=etree .HTML(响应。text)结果=HTML。XPath(//script[@ type= application/JSON ]/text())result=result[0]# JSON。负载()方法可以将字符串转化为大蟒数据类型结果=json.loads(结果)#创建工作簿wb=openpyxl .工作簿()#创建工作表ws=wb.activews.title=国内疫情ws.append([省份, 累计确诊, 死亡, 治愈, 现有确诊, 累计确诊增量, 死亡增量, 治愈增量, 现有确诊增量])result _ in=result[ component ][0][ caseList ]data _ out=result[ component ][0][ global list ] area-大多为省份城市-城市已确认-累计crued -值域相对时间-确定的相对-累计的增量治愈相对-值域的增量姜黄公司现有确镇curConfirmRelative现有确镇的增量 for each in result _ in:temp _ list=[each[ area ],each[ confirm ],each[ dead ],each[ confirm relative ],each[diedRelative],each[curedRelative],each[ cured relative ],each[curConfirmRelative],each[ curConfirm relative ],for I in range(len(temp _ list)):if temp _ list[I]= :temp _ list[I]=追加(在获取国外疫情数据对于每个in data _ out:sheet _ title=each[ area ]#创建一个新的工作表ws _ out=WB。创建工作表(工作表标题)ws _ out。追加([国家, 累计确诊, 死亡, 治愈, 现有确诊, 累计确诊增量])for country in each[ subList ]:list _ temp=[country[ country ],country[ confirm ],country[curConfirm],country[ confirm relative ]]for I in range(len(list _ temp)):if list _ temp[I]= :list _ temp[I]= 0 ws _ out .追加(list _ temp)WB。保存(./data.xlsx)结果如下:

  国内:

  国外:

  推荐: 020 持续更新,精品小圈子每日都有新内容,干货浓度极高。结实人脉、讨论技术你想要的这里都有!抢先入群,跑赢同龄人!(入群无需任何费用)点击此处,与计算机编程语言开发帅气的大白一起交流学习群号:858157650 申请即送:Python软件安装包,Python实战教程资料免费领取,包括计算机编程语言基础学习、进阶学习、爬虫、人工智能、自动化运维、自动化测试等

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: