专栏首页酷猫小窝利用Python获取疫情数据

利用Python获取疫情数据

疫情到现在过去很久了,国内已经大体控制下来了。这次的目标是爬取利用python爬取疫情数据(基于丁香园的数据) 这期本来3.9就创建了的,但一直拖到今天4.13才完成,还是太懒 ——————————————————————- 准备: 1.python及常用模块 2.VS Cods(当然可以换成自己喜欢的IDE) 3.浏览器 目标网址:查看链接 ——————————————————————– 开始 ——————————————————————– 1.抓包 首先是抓包

经过分析可以看出,该网页的数据不同于平常的一个框架+单独的json数据包,它是直接渲染好了给我们传过来的,所以要做的事情就比较简单了,只需要从html代码中提取出我们需要的数据。 ——————————————————————– 2.python代码编写 我们先实现获取html代码的代码,然后再尝试从中提取数据。

这里指定了一下编码,是为了防止出现不必要的转码错误。 ——————————————————————– 3.提取HTML中的代码 获取网页数据实现了,接下来我们分析一下数据的位置,以及该如何提取出来。

通过观察我们可以发现,它是利用一个script一个区域数据,分别对应的是全球地区,全国地区等,里面是一串类似是js代码,先不管,先把我们这次要的国内数据提代码取出来。

通过分析,国内的数据script对应的id值是“getAreaStat” 。因为是属于一个类里的,所以这里我用了xpath,代码如下:

——————————————————————– 4.提取代码中的数据 经过上面的步骤,我们已经实现了提取出了国内数据的js代码,但是很明显我们只需要数据,而我们利用python也不可能执行这串window.getAreaStat代码,所以我们尝试删去赋值等代码,直接提取数据,因为里面的数据刚好符合json格式。 要删除的头数据

要删除的尾数据

这里[0]是因为前面xpath查找的返回的是list,因为我们指定了id,所以应该只能找到一个,并且正好是我们想要的,然后用[28:-12]提取出完美的json格式的数据。

——————————————————————– 5.查找数据 虽然每个省份都是一个很好的json数据,但是我们要取的是整个省份,所以我们将其转化为列表,然后利用迭代,查找到我们需要的城市。

然后调试看看

可以发现已经成功了,至于我为什么要用到city[0:-1],是为了对接微信的地理位置数据,这个我会在下一次的博文介绍。 ——————————————————————– 结语 这次的难点主要在数据并不是一个单独的json包里,需要我们自己从html代码中获取,并且获取的是js代码,我们还要额外提取其中的数据,总的来说还是难度不大的。 如果有疑问可以在下面评论联系我,那我们下期见~

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • WordPress文章中插入HTML、PHP等代码被误执行的解决方法

    我们在WordPress写文章时,如果想引用一段PHP,HTML,CSS或js等代码,有时发现代码被自动处理了,无法正常显示。

    叮当叮
  • 宝塔Linux面板专业版-安装与破解

    首先从安装宝塔Linux免费版开始,使用xshell或者其他软件连接到服务器上,执行一键安装命令脚本

    叮当叮
  • 搭建自己的网盘(腾讯云服务器入门进阶篇)

    这篇图文算是腾讯云的入门升级篇吧,如果不是腾讯云也没关系,阿里云或其它云服务商应该也有这一服务。说是搭网盘,其实只是重装个系统,不过装的好以后搭博客,论坛,企业...

    叮当叮
  • 9个,程序员又爱又恨的编程习惯

    编程习惯No. 1:使用goto 关于禁止使用goto可以追溯到许多结构化编程工具还未面世的时代。如果程序员想要创建一个循环或跳到另一段程序中,那么他们需要输入...

    BestSDK
  • TED视频 | 混搭人文主义,我找到了数据可视化的新玩法

    大数据文摘
  • 塔说 | 如何用Python分析数字加密货币

    帮助 这篇文章的目的是简单介绍“如何用Python来分析数字加密货币”。我们将用简单的Python代码来检索、分析和可视化不同的数字货币数据。在这个过程中,我们...

    灯塔大数据
  • 拉回人间,高大上的云计算怎样发挥价值

    信息技术的变革总是随着时间不断扩大其影响范围,而在此之前大多数企业会选择观察和等待时机成熟。云计算就处在这样一个特殊的时期,宣传已经足够,那么如何把其力量最大化...

    静一
  • 有赞数据中台建设实践

    究竟什么是中台, 业界并没有一个标准答案, 各个厂商都有自己的定义. 笔者比较认可的一个定义是 ThoughtWorks 提出的"企业级能力复用平台". 各个领...

    有赞coder
  • 用Python代码建个数据实验室,顺利入坑比特币

    作者:Patrick Triest 编译:Katherine Hou、林海、Shan LIU、高宁、Yawei 比特币市场到底是如何运作的?数字加密货币(cry...

    企鹅号小编
  • BDTC 2014|程学旗发布大数据白皮书与发展趋势报告

    【CSDN现场报道】2014年12月12-14日,由中国计算机学会(CCF)主办,CCF大数据专家委员会承办,中科院计算所与CSDN共同协办,以推进大数据科研、...

    CSDN技术头条

扫码关注云+社区

领取腾讯云代金券