您的位置:首页>新闻动态> 行业动态> 我用Python爬了上市公司财务报表,跟巴菲特学习如何炒股

我用Python爬了上市公司财务报表,跟巴菲特学习如何炒股

发布日期:2017-9-8 10:31:38文章热度:139℃

wKioL1muByLyqWnmAAL2WDJuzUw653.jpg-wh_651x-s_438266506.jpg

沃伦·巴菲特( Warren Buffett),全球著名的投资商。从事股票、电子现货、基金行业。在 2017 年 7 月 17 日,《福布斯富豪榜》发布,沃伦·巴菲特以净资产 734 亿美元排名第四。

作为”股神”,他的投资理念被许多人追捧。与其共进午餐的慈善活动都可以拍卖到 345.67 万美元,从中我们可以轻易地看出,他的投资界地位、影响力有多大。

wKioL1muAd2CXwZcAALd3e_Eqj8645.jpg

他的投资名言有很多:

风险,是来自你不知道你在做什么。

若你不打算持有某只股票达十年,则十分钟也不要持有。

投资的秘诀,不是评估某一行业对社会的影响有多大,或它的发展前景有多好,而是一间公司有多强的竞争优势。这优势可以维持多久,产品和服务的优越性持久而深厚,才能给投资者带来优厚的回报。

我最喜欢的持股时间是……永远!

要投资成功,就要拼命阅读。不但读有兴趣购入的公司资料,也要阅读其他竞争者的资料。

从他的这些名言中,我们不难发现,巴菲特做的是长期投资,他投一家公司,抱定的目标是持续持有,不因为价格原因而出售。他看准一家公司,会分析这家公司的竞争优势,也会分析这家公司的对手的竞争优势,然后做出投资决策。

他是怎么确定一家公司是否值得自己长期投资,是否具有竞争优势的呢?其中,最有效、最常用的手段之一就是分析上市公司财务报表。网上有很多《跟巴菲特学看上市公司财务报表》诸如此类的文章,仁者见仁智者见智。

本文重点不在于如何分析财务报表,而是如何获得财务报表,为后续的方便分析做准备。

实战背景

Github代码获取:https://github.com/Jack-Cherish/python-spider

Python版本: Python3.x

运行平台: Windows

IDE: Sublime text3

每个上市公司的财务报表都是免费提供的,可以在他们的官网进行下载。但是这样一个一个找,太麻烦。有没有一个网站,集成好各个上市公司的财务信息呢?当然有,而且很多!各个金融门户网站都有!

今天,我们看哪个金融门户网站?网易财经!

双手奉上它的地址:http://quotes.money.163.com/hkstock/

这个网站长这样:

wKiom1muAvTT_RRhAAGUox23JWQ267.jpg

我们可以通过股票查询,查看股票情况。比如我输入 00700,查看腾讯控股在美股的情况,如下图:

wKioL1muAuWhpECnAAHsskySG24426.jpg

可以看到,我截图的时间,腾讯控股”绿了”,也就是跌了。点击财务数据,我们就可以看到腾讯控股的财务报表,如图所示:

wKiom1muAw3Qm6vIAAHGbSQTrQQ730.jpg

这个财务数据栏目中,提供了《主要财务指标》、《利润表》、《资产负债表》以及《现金流量表》。

从图中可以看到,该网站提供了财务数据在线浏览功能,但是没有提供财务报表下载功能,如何将每年的财务数据获取,并存入数据库,方便我们后续的分析呢?没错,这就是本文的主题:财务报表爬取入库。

网站分析

我们以腾讯控股的财务数据为例进行分析。

它的URL:http://quotes.money.163.com/hkstock/cwsj_00700.html

看一下这个 URL 地址有什么特点?腾讯控股的股票代码是 00700。对的,你没猜错,’http://quotes.money.163.com/hkstock/cwsj_’ 股票代码 ‘.html’,就是各个上市公司的财务数据页面。

思考一个问题,下图的这些数据,我们需要爬取吗?

wKiom1muAxvDly_QAAGMDXIQcAQ619.jpg

答曰:不需要!为什么?因为财务报表的格式是统一的。我们需要的是这些报表里的数据,而不是表的栏目名称,这些栏目名称,我们直接手动敲入到数据库中就可以了,直接作为数据库的列名。

那么,这些报表数据如何获取呢?请看下图:

wKioL1muAwjThiiMAAE9RQvYQDE890.jpg

在时间选择框这里,我们可以获取到一共有哪些时间的财务报表。点击查询按钮,我们就可以进行查询,对点击主要财务指标的查询按钮这个动作,使用 Fiddler 进行抓包分析。

抓包截图如下:

关键词:太原app开发 太原网站定制 太原app定制 太原网站开发 太原软件开发 太原软件定制


二维码
二维码