作者 | 徐麟

本文系作者投稿

前言

近期,受到新冠疫情的影响两周以来,全球股市都发生了大幅的下跌,其中美股市场更是在三月经历了四次熔断,堪称史诗级暴跌,虽然3月24日各国股市都有了大幅的回调,道琼斯指数涨幅也超过了10%,但是相较于之前的大幅下跌,依旧无法弥补此前的缺口。

本文将通过各国股市主要指数(如中国的沪市指数,美国的道琼斯指数等)在最近一个月的表现,对比各国股市在最近一个月内的跳水情况。本文后续将对比各国股市单日跌幅及整体跌幅,并且根据2019年GDP选取TOP20的国家作为重点国家进行对比。

数据获取

本文数据来源为英为财情网站,首先在网站中的导航页通过筛选,选择各国主要的指数,获取相应页面的URL,如下图所示:

由于该网站美国选择的主要指数为纳斯达克,后续我们会将相应url修改为道琼斯指数,更加能够代表美国股市整体的情况,之后会进入各国指数的详情页,通过抓取详情页的数据作为本文数据的来源:

部分代码如下:

html = requests.get(url,cookies=cookie, headers=header).content
bsObj = BeautifulSoup(html.decode('utf-8'),"html.parser")
title = bsObj.find_all('table',attrs={'class':'genTbl closedTbl crossRatesTbl elpTbl elp30'})
title = [k.find('td',attrs={'class':'bold left noWrap elp plusIconTd'}).find('a').attrs['href'] for k in title]
url_all = ['https://cn.investing.com' + k + '-historical-data' for k in title]global_index = pd.DataFrame(columns=['date','country','value','rate'])
err_list = []
for i in range(len(url_all)):try:url = url_all[i]html = requests.get(url,cookies=cookie, headers=header).contentbsObj = BeautifulSoup(html.decode('utf-8'),"html.parser")country = bsObj.find('div',attrs={'class':'right'}).text.split('\n')[7]tables = bsObj.findAll('table')trs = tables[1].find_all('tr')date = [trs[i].find_all('td')[0].text for i in range(len(trs)) if i != 0]value = [trs[i].find_all('td')[1].text for i in range(len(trs)) if i != 0]rate = [trs[i].find_all('td')[6].text for i in range(len(trs)) if i != 0]global_index = global_index.append(pd.DataFrame({'date':date,'country':country,'value':value,'rate':rate}),ignore_index=True)trs = tables[0].find_all('tr')date = [trs[i].find_all('td')[0].text for i in range(len(trs)) if i != 0]value = [trs[i].find_all('td')[1].text for i in range(len(trs)) if i != 0]rate = [trs[i].find_all('td')[6].text for i in range(len(trs)) if i != 0]global_index = global_index.append(pd.DataFrame({'date':date,'country':country,'value':value,'rate':rate}),ignore_index=True)print('right'+str(i))except:err_list.append(i)print('wrong'+str(i))global_index.to_excel('全球三月指数.xlsx')

最终获取的数据如下:

单日跳水排名

之后我们将对各国的跳水能力进行排名,首先要比较的是单日跳水情况,即单日的跌幅,由于我国股市设定了涨停和跌停的机制,所以在下面的榜单中将不会看到我国股市的身影,首先看的是所有国家单日跌幅的TOP10:

榜单中近期收到疫情影响较为严重的阅读量和西班牙都在榜单中,但是出人意料的是巴西,阿根廷,智利,哥伦比亚这些南美的国家却统治了这份榜单,哥伦比亚更是出现了单日22.21%的跌幅,下面看一下去年GDP前20的国家:

主要国家大的跌幅主要集中在3.12和3.16两天,巴西更是在绑定那种出现三次,收到的影响要大于欧洲主要的国家,美国道琼斯指数3.16创下的跌幅在榜单中排名第六,这也符合预期。

说完跳水,再来看下反弹,下面分别是所有国家和主要国家单日涨幅TOP 10:

可以看到单日涨幅排名前列的国家也基本上同样会出现在跌幅榜中,如果有人幸运地在合适的时机抄底(基本上不太可能)一定会赚的盆满钵满,然而也有可能不幸地踏空

总体跳水排名

下面我们将通过对比最近一个月指数的变化情况,更为直观地体现出股市的跳水情况,以各国2.24日的指数为基准,对比3.25日的指数与该基准的比率,首先展示的是全球股市跳水排行榜:

可以看到榜单中跳水最为严重的哥伦比亚最近一个月指数下降高达35%以上,另外在榜单中一些平时存在感不是很高的国家,如纳米比亚,塞浦路斯也出现在了榜单中,榜单中包括了发达国家和发展中国家,各国从经济发展的情况、地域上似乎很难找到一些相似之处。

下面再来看下20个重点国家的跳水情况:

榜单中的欧美各国缩水程度都在23%以上,这些国家也对全球整体的经济形势产生着巨大的影响,大家可能会做的就是在前两份榜单中寻找A股的身影,然而事实证明A股最近一个月还算是坚挺,下面看一下较为坚挺的股市排行榜。

唯一一个超过100(3.25指数高于2.24)的居然是厄瓜多尔,不知道这是一个怎样神奇的存在,另外各大网站显示改过指数停留在了3.16日,可能与这也有关系。我国最近一个月的跌幅小于10%,排名前十,下面再来看一下重点国家的数据:

从榜单中可以看到中日韩三国的跌幅相较于欧美各国要小很多,这也要归功于对疫情的有效控制,最后我们将重点国家最近一个月的数据做成了动态的条形图,让大家能够有更加直观的感受:

作者简介:徐麟,某互联网公司数据分析狮,个人公众号数据森麟(id:shujusenlin)

热 文 推 荐

☞为什么我们程序员不把软件开发当回事?

☞字节跳动武汉招聘 2000  人,距离大厂 Offer,你还差这篇 Java 干货!| 原力计划

☞开源的未来 10 年:中国开源社区建立是关键

☞人人都能读懂的「以太坊2.0分片设计」

☞旷视提Circle Loss,统一优化视角,革新深度特征学习范式 | CVPR 2020

☞为何你的 SaaS 想法总是失败?没想清楚这 4 个原因可能会继续失败!

你点的每个“在看”,我都认真当成了喜欢

Python 爬取疫情期间全球股市走向,笑不出来......相关推荐

  1. python爬取天气与每日一笑并通过微信发送

    欢迎大家光临我的个人博客http://www.chenjingjiu.cn,大家一起交流学习.里面有很多类似的题材哦~ 最近在写一个跑在服务器上的脚本,需要实现的功能是每天九点同时给我和我的女朋友发送 ...

  2. python爬取疫情数据并存入excel中(包括国内各省份,全球,国内外历史疫情数据)代码可以直接运行

    流程 1.进入获取疫情的url 例如: 腾讯新闻的疫情网站 https://news.qq.com/zt2020/page/feiyan.htm#/ 网易新闻:https://wp.m.163.com ...

  3. python爬各国疫情数据,存储并进行数据可视化

    实验内容: 编写程序采用爬虫技术爬取各国疫情数据,进行存储并进行数据可视化,要求可以看到各国今日新增确诊数.累计确诊数. 实验方法: 爬取数据 通过以下的步骤,获取到了各国和我国今日的新增确诊数.累计 ...

  4. 练习:使用Python爬取COVID-19疫情国内当日数据

    练习:使用Python爬取COVID-19疫情国内当日数据 推荐公众号:数据酷客 (里面有超详细的教程) 代码来源数据酷客公众号教程 URL它是Uniform Resource Locator的缩写, ...

  5. 用python爬取全国和全球疫情数据,并进行可视化分析(过程详细代码可运行)

    用Python爬取最新疫情数据 这次重大疫情,每时每刻数据都有可能变化,这篇博文将为大家讲解如何爬取实时疫情数据,并且分析数据,作出数据可视化的效果. 报告梗概: 对中国疫情分析 1.1 展示各省疫情 ...

  6. Python爬虫爬取疫情数据并可视化展示

    这篇文章主要介绍了Python利用爬虫爬取疫情数据并进行可视化的展示,文中的示例代码讲解清晰,对工作或学习有一定的价值,需要的朋友可以参考一下.编程资料点击领取 目录 知识点 开发环境 爬虫完整代码 ...

  7. python 爬虫爬取疫情数据,爬虫思路和技术你全都有哈(一)

    python 爬虫爬取疫情数据,爬虫思路和技术你全都有哈(二.数据清洗及存储) 爬起疫情数据,有两个网址: 1.百度:链接 2.丁香园疫情:链接 在这两个中,丁香园的爬虫相对简单一点,所以今天就展示一 ...

  8. python 爬虫爬取疫情数据,爬虫思路和技术你全都有哈(二)

    上一章: python 爬虫爬取疫情数据,爬虫思路和技术你全都有哈(一.爬虫思路及代码) 第三步:数据清洗 清洗数据很简单,就是数据太乱的话,就得花些时间,所以一定要有一个好的方法,才能避免在清洗数据 ...

  9. python画哪吒_用Python爬取暑期档大火的《哪吒》,20W+评论数据,我们分析一波...

    原标题:用Python爬取暑期档大火的<哪吒>,20W+评论数据,我们分析一波 说起这个暑期档的动画片,非<哪吒之魔童降世>莫属了! 上映第 1 天:89分钟,中国动画最快破 ...

最新文章

  1. 微服务实战(六):选择微服务部署策略
  2. 【转】【UNITY3D 游戏开发之五】Google-protobuf与FlatBuffers数据的序列化和反序列化...
  3. 软件调试学习笔记(四)—— 异常的处理流程
  4. 四-1、Cadence Allegro推荐操作方式和视图命令
  5. oracle10_client的安装,Oracle10.2ClientWindows安装.doc
  6. 关于php的字符串编码
  7. Linux下新手基本操作及技巧看图上路 (7)
  8. python复杂网络分析_科学网—复杂网络分析库NetworkX学习笔记(3):网络演化模型 - 闫小勇的博文...
  9. 阿里云天池大数据竞赛——O2O优惠券使用预测(基于XGBoost)(附python Jupter代码)
  10. 电商系统(毕业设计)
  11. Java全栈开发---Java ERP系统开发:商业ERP(十二)数据的导入导出(Excel)
  12. 有了字节流,为什么还要有字符流
  13. 解决PHP报错:Call to undefined function array_column()
  14. mc服务器修改别人领地权限,我的世界领地权限设置 领地指令大全
  15. Python基础入门9:字符串1,字符串的驻留
  16. dx12 龙书第二十一章学习笔记 -- 环境光遮蔽
  17. 如何提问,提问技巧,如何有效的获取问题的答案
  18. 如何将自己chrome中的拓展程序分享给别人
  19. iphone的计算机功能是什么,iphone计算器
  20. php 获取agent,php根据useragent获取手机品牌和型号

热门文章

  1. Latex论文中取消图表目录不同章间的大间隔
  2. 解决图片上传 显示图片慢的问题
  3. 《软件需求规格说明书》几点重要内容
  4. java多客户端聊天程序,java – 多客户端聊天程序,向所有客户端广播聊天?
  5. Android 面试总结
  6. Audio Codec介绍-4(利用Adobe Audition工具来产生正弦波)
  7. VXML: 实现自己的中文语音应用
  8. 数据分析--预测医疗费用
  9. opencv基于ycrcb的皮肤检测(改进版)
  10. php点名器代码_Javascript点名器