选出某上市公司过去分红情况

         股票分红都是真金白银,简单来说,上市公司分配股利的方式主要有转增股本和派发现金股利,其中现金股利比较好理解,就是上市公司直接派发给股民的现金红利;转增股本却来自于资本公积,不受公司年度可分配利润限制,本质上说,转增股本并不是对股东的分红回报。从股民回报角度考虑,现金红利才是上市公司给予股民的真金白银,也是我们获取投资收益的重要部分,一般分红高的个股踩雷的几率较低。

  一个企业若要进行分红的话,则必须要实打实的真金白银地从报表里取出利润进行分配——大比例现金分红对一个现金流紧张和利润表偷梁换柱的企业是万万使不得的(要钱要脸?)。所以,勇于和乐于这么做的企业基本在前提上已经基本排除了利润表造假和现金流紧张这两种情况。

         如何使用Python选出某上市公司过去的分红情况呢?答案是使用Pythonbaostock 接口,示例代码如下。

# -*- coding: utf-8 -*-
import baostock as bs
import pandas as pd
 
def query_dividend(code, start_year, end_year):
    """获取除权除息信息"""
    bs.login() # 登录系统
    data_list = [] # 数据集合
    while start_year <= end_year:
        # 实际获取数据
        rs = bs.query_dividend_data(code, start_year, yearType="operate")
        # 循环去除数据
        while (rs.error_code == '0') & rs.next():
            data_list.append(rs.get_row_data())
        # 修改循环条件
        start_year = start_year + 1
    result_dividend = pd.DataFrame(data_list, columns=rs.fields)
    
    # 打印输出
    print(result_dividend)
    # 结果集输出到csv文件
    result_dividend.to_csv("D:\\history_Dividend_data.csv", encoding="gbk", index=False)
    bs.logout() # 登出系统
 
if __name__ == '__main__':
    """主方法"""
    query_dividend("sh.600000", 1999, 2008)

divid3.png


返回数据如下,可以看出,有每股红股、分红送转等指标,非常方便。


divid1.png

divid2.png





猜你喜欢

转载自blog.51cto.com/5723595/2134048