1
0

优化数据更新

This commit is contained in:
2025-01-13 18:24:28 +08:00
parent 64ea792444
commit 74415118ba
2 changed files with 4344 additions and 22 deletions

View File

@@ -73,31 +73,31 @@
{ {
"metadata": { "metadata": {
"ExecuteTime": { "ExecuteTime": {
"end_time": "2025-01-13T01:30:08.656800Z", "end_time": "2025-01-13T09:08:04.607819Z",
"start_time": "2025-01-13T01:30:08.653794Z" "start_time": "2025-01-13T09:08:04.602640Z"
} }
}, },
"cell_type": "code", "cell_type": "code",
"source": [ "source": [
"start_year = 2014\n", "start_year = 1990\n",
"end_year = 2024" "end_year = 2024"
], ],
"id": "dc68cde196159626", "id": "dc68cde196159626",
"outputs": [], "outputs": [],
"execution_count": 3 "execution_count": 11
}, },
{ {
"metadata": { "metadata": {
"ExecuteTime": { "ExecuteTime": {
"end_time": "2025-01-13T01:39:39.349170Z", "end_time": "2025-01-13T09:09:36.004427Z",
"start_time": "2025-01-13T01:30:08.660347Z" "start_time": "2025-01-13T09:08:33.797018Z"
} }
}, },
"cell_type": "code", "cell_type": "code",
"source": [ "source": [
"# 财务负债表\n", "# 财务负债表\n",
"balance_sheet_df = clean_df(get_balance_sheet_df(start_year, end_year))\n", "balance_sheet_df = clean_df(get_balance_sheet_df(start_year, end_year))\n",
"balance_sheet_df.to_csv(\"../temp/balance_sheet.csv\", index=False)" "balance_sheet_df.to_csv(f\"/Users/lanyuanxiaoyao/SynologyDrive/data/Tushare/财务报表/资产负债表{start_year}-{end_year}.csv\", index=False)"
], ],
"id": "33cd797a12ad567e", "id": "33cd797a12ad567e",
"outputs": [ "outputs": [
@@ -105,8 +105,9 @@
"name": "stdout", "name": "stdout",
"output_type": "stream", "output_type": "stream",
"text": [ "text": [
"Pull balance sheet: 2014\n", "Pull balance sheet: 1990\n",
"Pull balance sheet: 2015\n" "Pull balance sheet: 1991\n",
"Pull balance sheet: 1992\n"
] ]
}, },
{ {
@@ -121,6 +122,29 @@
"name": "stdout", "name": "stdout",
"output_type": "stream", "output_type": "stream",
"text": [ "text": [
"Pull balance sheet: 1993\n",
"Pull balance sheet: 1994\n",
"Pull balance sheet: 1995\n",
"Pull balance sheet: 1996\n",
"Pull balance sheet: 1997\n",
"Pull balance sheet: 1998\n",
"Pull balance sheet: 1999\n",
"Pull balance sheet: 2000\n",
"Pull balance sheet: 2001\n",
"Pull balance sheet: 2002\n",
"Pull balance sheet: 2003\n",
"Pull balance sheet: 2004\n",
"Pull balance sheet: 2005\n",
"Pull balance sheet: 2006\n",
"Pull balance sheet: 2007\n",
"Pull balance sheet: 2008\n",
"Pull balance sheet: 2009\n",
"Pull balance sheet: 2010\n",
"Pull balance sheet: 2011\n",
"Pull balance sheet: 2012\n",
"Pull balance sheet: 2013\n",
"Pull balance sheet: 2014\n",
"Pull balance sheet: 2015\n",
"Pull balance sheet: 2016\n", "Pull balance sheet: 2016\n",
"Pull balance sheet: 2017\n", "Pull balance sheet: 2017\n",
"Pull balance sheet: 2018\n", "Pull balance sheet: 2018\n",
@@ -141,19 +165,19 @@
] ]
} }
], ],
"execution_count": 4 "execution_count": 12
}, },
{ {
"metadata": { "metadata": {
"ExecuteTime": { "ExecuteTime": {
"end_time": "2025-01-13T01:43:28.007135Z", "end_time": "2025-01-13T09:11:33.507055Z",
"start_time": "2025-01-13T01:39:39.363037Z" "start_time": "2025-01-13T09:10:33.447304Z"
} }
}, },
"cell_type": "code", "cell_type": "code",
"source": [ "source": [
"income_df = clean_df(get_income_df(start_year, end_year))\n", "income_df = clean_df(get_income_df(start_year, end_year))\n",
"income_df.to_csv(\"../temp/income.csv\", index=False)" "income_df.to_csv(f\"/Users/lanyuanxiaoyao/SynologyDrive/data/Tushare/财务报表/利润表{start_year}-{end_year}.csv\", index=False)"
], ],
"id": "17306c1524f5e173", "id": "17306c1524f5e173",
"outputs": [ "outputs": [
@@ -161,8 +185,9 @@
"name": "stdout", "name": "stdout",
"output_type": "stream", "output_type": "stream",
"text": [ "text": [
"Pull income: 2014\n", "Pull income: 1990\n",
"Pull income: 2015\n" "Pull income: 1991\n",
"Pull income: 1992\n"
] ]
}, },
{ {
@@ -177,6 +202,29 @@
"name": "stdout", "name": "stdout",
"output_type": "stream", "output_type": "stream",
"text": [ "text": [
"Pull income: 1993\n",
"Pull income: 1994\n",
"Pull income: 1995\n",
"Pull income: 1996\n",
"Pull income: 1997\n",
"Pull income: 1998\n",
"Pull income: 1999\n",
"Pull income: 2000\n",
"Pull income: 2001\n",
"Pull income: 2002\n",
"Pull income: 2003\n",
"Pull income: 2004\n",
"Pull income: 2005\n",
"Pull income: 2006\n",
"Pull income: 2007\n",
"Pull income: 2008\n",
"Pull income: 2009\n",
"Pull income: 2010\n",
"Pull income: 2011\n",
"Pull income: 2012\n",
"Pull income: 2013\n",
"Pull income: 2014\n",
"Pull income: 2015\n",
"Pull income: 2016\n", "Pull income: 2016\n",
"Pull income: 2017\n", "Pull income: 2017\n",
"Pull income: 2018\n", "Pull income: 2018\n",
@@ -197,19 +245,19 @@
] ]
} }
], ],
"execution_count": 5 "execution_count": 13
}, },
{ {
"metadata": { "metadata": {
"ExecuteTime": { "ExecuteTime": {
"end_time": "2025-01-13T01:46:46.375157Z", "end_time": "2025-01-13T09:13:32.890801Z",
"start_time": "2025-01-13T01:43:28.011213Z" "start_time": "2025-01-13T09:12:46.032342Z"
} }
}, },
"cell_type": "code", "cell_type": "code",
"source": [ "source": [
"cash_flow_df = clean_df(get_cash_flow_df(start_year, end_year))\n", "cash_flow_df = clean_df(get_cash_flow_df(start_year, end_year))\n",
"cash_flow_df.to_csv(\"../temp/cash_flow.csv\", index=False)" "cash_flow_df.to_csv(f\"/Users/lanyuanxiaoyao/SynologyDrive/data/Tushare/财务报表/现金流量表{start_year}-{end_year}.csv\", index=False)"
], ],
"id": "334dbe20f2047a1e", "id": "334dbe20f2047a1e",
"outputs": [ "outputs": [
@@ -217,8 +265,15 @@
"name": "stdout", "name": "stdout",
"output_type": "stream", "output_type": "stream",
"text": [ "text": [
"Pull cash flow: 2014\n", "Pull cash flow: 1990\n",
"Pull cash flow: 2015\n" "Pull cash flow: 1991\n",
"Pull cash flow: 1992\n",
"Pull cash flow: 1993\n",
"Pull cash flow: 1994\n",
"Pull cash flow: 1995\n",
"Pull cash flow: 1996\n",
"Pull cash flow: 1997\n",
"Pull cash flow: 1998\n"
] ]
}, },
{ {
@@ -233,6 +288,23 @@
"name": "stdout", "name": "stdout",
"output_type": "stream", "output_type": "stream",
"text": [ "text": [
"Pull cash flow: 1999\n",
"Pull cash flow: 2000\n",
"Pull cash flow: 2001\n",
"Pull cash flow: 2002\n",
"Pull cash flow: 2003\n",
"Pull cash flow: 2004\n",
"Pull cash flow: 2005\n",
"Pull cash flow: 2006\n",
"Pull cash flow: 2007\n",
"Pull cash flow: 2008\n",
"Pull cash flow: 2009\n",
"Pull cash flow: 2010\n",
"Pull cash flow: 2011\n",
"Pull cash flow: 2012\n",
"Pull cash flow: 2013\n",
"Pull cash flow: 2014\n",
"Pull cash flow: 2015\n",
"Pull cash flow: 2016\n", "Pull cash flow: 2016\n",
"Pull cash flow: 2017\n", "Pull cash flow: 2017\n",
"Pull cash flow: 2018\n", "Pull cash flow: 2018\n",
@@ -253,7 +325,7 @@
] ]
} }
], ],
"execution_count": 6 "execution_count": 15
}, },
{ {
"metadata": { "metadata": {
@@ -672,6 +744,402 @@
} }
], ],
"execution_count": 8 "execution_count": 8
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2025-01-13T09:37:00.340262Z",
"start_time": "2025-01-13T09:36:59.184110Z"
}
},
"cell_type": "code",
"source": [
"import akshare as ak\n",
"\n",
"# ak.stock_balance_sheet_by_yearly_em(\"SZ000001\")\n",
"# df = ak.stock_financial_report_sina(\"sz000001\", symbol=\"资产负债表\")\n",
"df = ak.stock_financial_benefit_ths(\"000001\")\n",
"# df[df[\"报告日\"].str.endswith(\"1231\")]\n",
"df"
],
"id": "582154dbc28b6bd",
"outputs": [
{
"data": {
"text/plain": [
" 报告期 报表核心指标 *净利润 *营业总收入 *营业支出 *归属于母公司所有者的净利润 \\\n",
"0 2024-09-30 397.29亿 1115.82亿 637.13亿 397.29亿 \n",
"1 2024-06-30 258.79亿 771.32亿 450.45亿 258.79亿 \n",
"2 2024-03-31 149.32亿 387.70亿 202.16亿 149.32亿 \n",
"3 2023-12-31 464.55亿 1646.99亿 1067.71亿 464.55亿 \n",
"4 2023-09-30 396.35亿 1276.34亿 785.87亿 396.35亿 \n",
".. ... ... ... ... ... ... \n",
"110 1993-06-30 1.37亿 2.66亿 False 1.37亿 \n",
"111 1992-12-31 1.72亿 4.76亿 False 1.72亿 \n",
"112 1991-12-31 1.13亿 3.35亿 False 1.13亿 \n",
"113 1990-12-31 7087.50万 False False 7087.50万 \n",
"114 1989-12-31 4302.00万 False False 4302.00万 \n",
"\n",
" *扣除非经常性损益后的净利润 报表全部指标 一、营业总收入 其中:营业收入 ... 少数股东损益 扣除非经常性损益后的利润 六、每股收益 \\\n",
"0 397.48亿 1115.82亿 1115.82亿 ... False 397.48亿 \n",
"1 258.80亿 771.32亿 771.32亿 ... False 258.80亿 \n",
"2 149.06亿 387.70亿 387.70亿 ... False 149.06亿 \n",
"3 464.31亿 1646.99亿 1646.99亿 ... False 464.31亿 \n",
"4 395.68亿 1276.34亿 1276.34亿 ... False 395.68亿 \n",
".. ... ... ... ... ... ... ... ... \n",
"110 False 2.66亿 2.66亿 ... False False \n",
"111 False 4.76亿 4.76亿 ... False False \n",
"112 False 3.35亿 3.35亿 ... False False \n",
"113 False False False ... False False \n",
"114 False False False ... False False \n",
"\n",
" (一)基本每股收益 (二)稀释每股收益 七、其他综合收益 归属母公司所有者的其他综合收益 八、综合收益总额 归属于母公司股东的综合收益总额 \\\n",
"0 1.94 1.94 -7.86亿 -7.86亿 389.43亿 False \n",
"1 1.23 1.23 -3.56亿 -3.56亿 255.23亿 False \n",
"2 0.66 0.66 3.45亿 3.45亿 152.77亿 False \n",
"3 2.25 2.25 -3.72亿 -3.72亿 460.83亿 False \n",
"4 1.94 1.94 -8.38亿 -8.38亿 387.97亿 False \n",
".. ... ... ... ... ... ... \n",
"110 False False False False False False \n",
"111 False False False False False False \n",
"112 False False False False False False \n",
"113 False False False False False False \n",
"114 False False False False False False \n",
"\n",
" 归属于少数股东的综合收益总额 \n",
"0 False \n",
"1 False \n",
"2 False \n",
"3 False \n",
"4 False \n",
".. ... \n",
"110 False \n",
"111 False \n",
"112 False \n",
"113 False \n",
"114 False \n",
"\n",
"[115 rows x 43 columns]"
],
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>报告期</th>\n",
" <th>报表核心指标</th>\n",
" <th>*净利润</th>\n",
" <th>*营业总收入</th>\n",
" <th>*营业支出</th>\n",
" <th>*归属于母公司所有者的净利润</th>\n",
" <th>*扣除非经常性损益后的净利润</th>\n",
" <th>报表全部指标</th>\n",
" <th>一、营业总收入</th>\n",
" <th>其中:营业收入</th>\n",
" <th>...</th>\n",
" <th>少数股东损益</th>\n",
" <th>扣除非经常性损益后的利润</th>\n",
" <th>六、每股收益</th>\n",
" <th>(一)基本每股收益</th>\n",
" <th>(二)稀释每股收益</th>\n",
" <th>七、其他综合收益</th>\n",
" <th>归属母公司所有者的其他综合收益</th>\n",
" <th>八、综合收益总额</th>\n",
" <th>归属于母公司股东的综合收益总额</th>\n",
" <th>归属于少数股东的综合收益总额</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2024-09-30</td>\n",
" <td></td>\n",
" <td>397.29亿</td>\n",
" <td>1115.82亿</td>\n",
" <td>637.13亿</td>\n",
" <td>397.29亿</td>\n",
" <td>397.48亿</td>\n",
" <td></td>\n",
" <td>1115.82亿</td>\n",
" <td>1115.82亿</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>397.48亿</td>\n",
" <td></td>\n",
" <td>1.94</td>\n",
" <td>1.94</td>\n",
" <td>-7.86亿</td>\n",
" <td>-7.86亿</td>\n",
" <td>389.43亿</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2024-06-30</td>\n",
" <td></td>\n",
" <td>258.79亿</td>\n",
" <td>771.32亿</td>\n",
" <td>450.45亿</td>\n",
" <td>258.79亿</td>\n",
" <td>258.80亿</td>\n",
" <td></td>\n",
" <td>771.32亿</td>\n",
" <td>771.32亿</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>258.80亿</td>\n",
" <td></td>\n",
" <td>1.23</td>\n",
" <td>1.23</td>\n",
" <td>-3.56亿</td>\n",
" <td>-3.56亿</td>\n",
" <td>255.23亿</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2024-03-31</td>\n",
" <td></td>\n",
" <td>149.32亿</td>\n",
" <td>387.70亿</td>\n",
" <td>202.16亿</td>\n",
" <td>149.32亿</td>\n",
" <td>149.06亿</td>\n",
" <td></td>\n",
" <td>387.70亿</td>\n",
" <td>387.70亿</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>149.06亿</td>\n",
" <td></td>\n",
" <td>0.66</td>\n",
" <td>0.66</td>\n",
" <td>3.45亿</td>\n",
" <td>3.45亿</td>\n",
" <td>152.77亿</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2023-12-31</td>\n",
" <td></td>\n",
" <td>464.55亿</td>\n",
" <td>1646.99亿</td>\n",
" <td>1067.71亿</td>\n",
" <td>464.55亿</td>\n",
" <td>464.31亿</td>\n",
" <td></td>\n",
" <td>1646.99亿</td>\n",
" <td>1646.99亿</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>464.31亿</td>\n",
" <td></td>\n",
" <td>2.25</td>\n",
" <td>2.25</td>\n",
" <td>-3.72亿</td>\n",
" <td>-3.72亿</td>\n",
" <td>460.83亿</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2023-09-30</td>\n",
" <td></td>\n",
" <td>396.35亿</td>\n",
" <td>1276.34亿</td>\n",
" <td>785.87亿</td>\n",
" <td>396.35亿</td>\n",
" <td>395.68亿</td>\n",
" <td></td>\n",
" <td>1276.34亿</td>\n",
" <td>1276.34亿</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>395.68亿</td>\n",
" <td></td>\n",
" <td>1.94</td>\n",
" <td>1.94</td>\n",
" <td>-8.38亿</td>\n",
" <td>-8.38亿</td>\n",
" <td>387.97亿</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>110</th>\n",
" <td>1993-06-30</td>\n",
" <td></td>\n",
" <td>1.37亿</td>\n",
" <td>2.66亿</td>\n",
" <td>False</td>\n",
" <td>1.37亿</td>\n",
" <td>False</td>\n",
" <td></td>\n",
" <td>2.66亿</td>\n",
" <td>2.66亿</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td></td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>111</th>\n",
" <td>1992-12-31</td>\n",
" <td></td>\n",
" <td>1.72亿</td>\n",
" <td>4.76亿</td>\n",
" <td>False</td>\n",
" <td>1.72亿</td>\n",
" <td>False</td>\n",
" <td></td>\n",
" <td>4.76亿</td>\n",
" <td>4.76亿</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td></td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>112</th>\n",
" <td>1991-12-31</td>\n",
" <td></td>\n",
" <td>1.13亿</td>\n",
" <td>3.35亿</td>\n",
" <td>False</td>\n",
" <td>1.13亿</td>\n",
" <td>False</td>\n",
" <td></td>\n",
" <td>3.35亿</td>\n",
" <td>3.35亿</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td></td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>113</th>\n",
" <td>1990-12-31</td>\n",
" <td></td>\n",
" <td>7087.50万</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>7087.50万</td>\n",
" <td>False</td>\n",
" <td></td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td></td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>114</th>\n",
" <td>1989-12-31</td>\n",
" <td></td>\n",
" <td>4302.00万</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>4302.00万</td>\n",
" <td>False</td>\n",
" <td></td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td></td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>115 rows × 43 columns</p>\n",
"</div>"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 21
} }
], ],
"metadata": { "metadata": {

File diff suppressed because it is too large Load Diff