专栏名称: 扑克投资家
扑克财经旗下品牌,实体产业和金融领域第一新媒体平台。专注于挖掘行业、公司、人物等深层次内容,同时关注金融领域、企业相关的业务实操,服务于实体产业和金融人群,专为变革者打造。
目录
相关文章推荐
吴晓波频道  ·  吴晓波:1688的“厂二代” ·  昨天  
51好读  ›  专栏  ›  扑克投资家

不懂爬虫的博士不是好Trader:一分钟教你用Excel从统计局抓数据!

扑克投资家  · 公众号  · 财经  · 2017-03-19 18:04

正文


更多、更及时的干货内容,请关注扑克投资家网站


文 | 潮汐智咖 江海

来源 | 潮汐社区 智咖专栏

编辑 | 扑克投资家,转载请注明出处




现在呢,从网上爬虫数据来做分析越来越火,如果不会这个skillset做数据处理简直没办法装逼。


作为一个兴趣广泛的高能物理phd,自然不能被时代落下。


首先声明,我并没有学过HTML的语言,也没学过VBA,所以自己解释的逻辑应该是非常容易理解的,保证没有任何编程基础的都能学会。当然前提是你有Excel,没有的话出门右转有盗版。


文中的方法其实完全不限于抓取统计局的数据,任何网站都可以想抓就抓,简直如若出入无人之境。(文末有彩蛋哟!)


好了,Let‘s rock!


起初呢,是因为之前业余想试着分析分析中国的宏观数据,上了一下统计局的网站,结果发现简直是灾难...


先来看看美联储的网站:(近期发现好多国内金融文章都开始用这个fed的图了,是不是因为我之前的Macro文章传播的呢~嘚瑟一下)


(小编倒腾了一会excel,发现本文逗比的作者不是给国统局广宣来了。

于是决定把他的大作公布出来,以示正听!)

《一部29000字的宏观笔记:七个角度敲开宏观金融世界的秘密(上)》

一部29000字的宏观笔记:七个角度敲开宏观金融世界的秘密(下)


Federal Reserve Economic Data:



数据量极其丰富,简直想怎么操作就怎么操作,各种加减乘除还有对比应有尽有。



如上图就是我想研究carry trade对于美国股市的影响,把他们放在一起可以把相关性看得一清二楚,对整理逻辑非常方便。


但是同时我也想研究国内的数据,然后就懵逼了。


国内统计局的网站是这样:



Are u kidding me? 只有一个表?还是一个月发布一次?


这一对比就看出来社会主义勤劳质朴的优越性了,自己动手丰衣足食,一个一个数敲进去吧。


我这人比较懒,正当想要放弃的时候突然灵机一动,是不是爬虫可以帮我这个忙呢?


赶紧在知乎上面狂搜一通,发现大部分都是Python语言,估计上手至少得花个好几天。有没有更简单粗暴一点的呢?接着我就搜到了这个问题下面的答案,

https://www.zhihu.com/question/47883186


简直是救星,赶紧撸起袖子撸起来,不对,是干起来。


这里呢,Excel其实对于mac用户非常不友好,因为从网上抓数据这个功能被删掉了,毕竟是Windows的软件...不过不用气馁,我们还有Google doc。当然,对于Windows用户就没有这个问题了。


先放上示意图:



看到没有!统计局的数据全在自己的Excel里了哟~


以后走哪儿数据抓到哪儿,遇神抓神,遇佛抓佛。


接下来就介绍一下具体是怎么操作的。


首先呢,我们需要打开一个Excel:



然后把光伟正的统计局网页地址放在第一格以示崇敬。(这里我选取的网页是上个月公布的PMI指数,2017年2月中国制造业采购经理指数为51.6%)


接着,我们就开始从这个网页抓取表格数据了:


自己也能抓数据了,想想有些小激动呢~

我们需要先任意选一个舒服的位置,输入一句话:

=IMPORTHTML(A1,"table",1)


如下图:


那么这句话是干什么呢?


具体pass给IMPORTHTML( )这个function的是三个argument值,


第一个值就是从A1,也就是统计局网页地址所在Excel的位置来告诉这个function区哪儿抓数据。


第二个值就是选取“table”这个格式,也就是告诉这个function我们想要的是指定网页上面的表格。我们可以从下面的注释看到还有一个选项是“list”,这个是在HTML里面的另一个格式,我们需要的是表格,所以此处可以暂时忽略。(这里有一个很大的限制就是只能选取这个两个格式,如果要做更复杂的condition判断的话就不太可能了,如果stick to Excel的话可能需要借助VBA了。但这里我们只介绍最简单的数据抓取方式。)


第三个值就是网页中的第n个table。这里我选取网页里的第一张表好了,没了。



是不是感觉意犹未尽呢?做好了接受高级装逼知识的思想准备,结果咻的一声就没了?


如果你仅仅只是想要知道怎么用呢,就不用再继续往下看了。


但是身为一个合格的科研人员,工作就是搞清楚为什么。接下来,我们可以更细致看一看具体这个function是怎么抓取的。


首先呢,我们需要用Google浏览器。因为这个浏览器有一个特殊的技能,那就是“Inspect”。


如下图:



然后毫不犹豫的点开:



这右边跳出来的一坨到底是什么东西!


不要急,我们慢慢看嘛。


首先呢,我们可以用一个快捷键command+shift+C(这里我猜Windows用户应该是control+shift+C),然后移到左边我们需要的表格上。


这个时候,惊人的事情发生了。右上角那一坨代码会跟着自己的鼠标移动!



其实呢,这个快捷键做的事情很简单,就是指出你鼠标所在位置的代码。右上角那一坨东西就是这整个网页的代码,其中自然也包括了我们需要的表格部分的代码。


Excel所做的事情呢,也就是从这一坨代码里面找出我们需要的表格“table”,然后把表格的内容复制到Excel里面供我们尽情玩乐。


如下图,我们可以看到“table”这个关键字吧,所指代的就是左边的那张表,然后“table”其下的内容就是这张表是怎样呈现在网页上的。



看到现在我们应该可以理解Excel是怎么操作的吧,so easy~


但是对于统计局网站的数据抓取其实有一个问题,因为他是一个一个网页发布的数据,并且跟其他数据混在一起随机排列,所以说具体选取需要抓取的网页还是得人工了。当然Excel还有一个function叫做IMPORTxm_x_l( ),这个function是用来抓取某一个xpath_query的,不局限于上面IMPORTHTML( )这个function只能抓table或者list。



所以也可以借助这个function来将网页中的信息,比如说搜索具体关键字的网页地址输入到Excel,然后再将这个网页地址自动输入到一开始的IMPORTHTML( ) function里面用来抓取所有选中网页的table或者list。


其实利用VBA也可以做这件事,不过可能就需要另外学习一下VBA了,不过大概思路感觉应该是这样。


当然如果有编程背景的最好还是用Python或者Java来做爬虫啦,毕竟比较主流,工具包也比较多。后面我也许会再更新一下用Python来做这件事,不过,我懒。


最后的最后,再悄悄告诉一个宇宙无敌超级霹雳最最最简单的方法,简直独门绝技,而且保证一秒钟就学会,无需任何知识背景。


那就是,直接copy and paste。


扫描下方二维码,上潮汐社区

直接向潮汐智咖 江海提问


聊产业、做金融,上潮汐




产业与金融大咖好难约? 微信搜索 & 进入 潮汐社区

800多位智咖和达人

随便撩

点击下图,抢先报名潮汐公开课

这可能是迄今为止最全面的大宗·金融知识库

点击查阅

大宗业务: 套期保值 | 套利 | 套利心得 | 商品定价 | 贸易融资 | 融资方式 | 仓储 | 航运第一季 | 航运第二季 | 航运第三季 | 航运衍生品 | 油轮 | 商品风暴 | 钢贸 | 石油贸易 | 衍生品 | 公司研究 

 

品种系列:玻璃 | 黄金 | 菜粕 | 玉米 | 甲醇 | 甲醇第二季 | 塑料 | 钢铁 |  |  | 螺纹 | PTA | 橡胶 | 大豆 | 小麦 |  | 煤炭 | 石油 |  | 棕榈油 | 棉花 | ETF期权 | 铁合金 | 原油 | 铁矿石 | 茶油 | 沥青 |  | 天然气 | 咖啡 | 棉纱 | 白银 |  | 饲料 | 鸡蛋

 

公司产业:伊藤忠 | 住友 | 丸红 | 三井物产 | 亚洲粮商 | 油脂油料 | ABCD | 油脂巨头 | 中粮 | 益海嘉里 | 巨头年报 | 矿业寡头 | 四大粮商 | 大宗寡头 | 国内粮油 | 必和必拓 | 淡水河谷 | 孟山都 | 中储粮 | 鲁花 | 中纺集团 | 嘉吉 | ADM | 邦吉 | 路易达孚 | 嘉能可 | 贡沃 | 粮油争霸 | 埃克森美孚蒂森克虏伯 | 巴斯夫 | 化工第一季 | 化工第二季 | 化工第三季

 

宏观系列:金融危机  | 资产配置 | 投资时钟 | 非农 | 楼市 | 中国经济 | 矿产资源 | OPEC | 货币 | 美元 | 人民币 | 货币政策 | 中国金融史 | 地缘政治 | 一带一路 | 中国历史 | 中国经济 | 脱欧

 

金融系列:CTA基金 | 桥水基金 | 金融女郎 | 高频量化 | 对冲基金 | 资管 | 泽熙 | 股票 | 债券 | 外汇 | 期权 | 主权基金


交易系列:德州扑克 | 交易员 | 交易理论 | 交易系统 | 风险控制 | 技术分析 | 交易心理 | 个人修炼 交易书单 | 交易故事 | 均线 | 金融女郎


大宗地理:

美国 | 阿根廷 | 新加坡 | 俄罗斯 | 瑞士 | 日本 | 伊朗 | 印度 | 巴基斯坦 | 巴西 | 巴拿马 土耳其 | 伊拉克


人物系列:石油大亨 | 沈文荣  | 宁高宁 | 索罗斯 | 利佛摩尔




版权问题、商务合作、读者投稿

微信号 mindcherisher

电话+86 186-1633-5129




点击阅读原文链接至扑克投资家(puoke.com)

获取更多、更及时的干货内容