From c605c84f4732e6cd22e072344af5c20061acc3ab Mon Sep 17 00:00:00 2001 From: cyj Date: Sat, 1 Oct 2022 17:56:34 +0800 Subject: [PATCH 1/2] set_option to fix print issue in Chinese --- README.md | 6 ++++++ gopup/economic/__init__.py | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 6d51eda..a24c9b9 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,12 @@ #### 建议安装方法 pip install gopup +##### 开发模式 +```bash + git clone https://github.com/justinzm/gopup.git + cd gopup + pip install -e . +``` #### 升级方法 pip install gopup --upgrade diff --git a/gopup/economic/__init__.py b/gopup/economic/__init__.py index fd3f95d..31f4334 100644 --- a/gopup/economic/__init__.py +++ b/gopup/economic/__init__.py @@ -4,5 +4,6 @@ # @Author : justin.郑 3907721@qq.com # @File : __init__.py.py # @Desc : 宏观经济 - +import pandas as pd +pd.set_option("display.unicode.east_asian_width", True) From 01f3ad6c73b3b81d26888ede14500aaa569a7865 Mon Sep 17 00:00:00 2001 From: cyj Date: Sun, 2 Oct 2022 11:20:41 +0800 Subject: [PATCH 2/2] fix shibor data and ma data getting nothing issue --- gopup/economic/marco_cn.py | 12 ++++++------ gopup/economic/shibor.py | 34 ++++++---------------------------- 2 files changed, 12 insertions(+), 34 deletions(-) diff --git a/gopup/economic/marco_cn.py b/gopup/economic/marco_cn.py index 5000e54..e945cc9 100644 --- a/gopup/economic/marco_cn.py +++ b/gopup/economic/marco_cn.py @@ -41,7 +41,7 @@ def get_gdp_quarter(): -------- DataFrame month :统计月份 - cpi : "季度", "国内生产总值 绝对值(亿元)", "国内生产总值 同比增长", "第一产业 绝对值(亿元)", "第一产业 同比增长", "第二产业 绝对值(亿元)", "第二产业 同比增长", "第三产业 绝对值(亿元)", "第三产业 同比增长" + cpi : "季度", "国内生产总值(亿元)", "同比增长", "第一产业(亿元)", "同比增长", "第二产业(亿元)", "同比增长", "第三产业(亿元)", "同比增长" """ url = "http://datainterface.eastmoney.com/EM_DataCenter/JS.aspx" params = { @@ -58,7 +58,7 @@ def get_gdp_quarter(): res_list = [] for li in tmp_list: res_list.append(li.split(',')) - columns = ["季度", "国内生产总值 绝对值(亿元)", "国内生产总值 同比增长", "第一产业 绝对值(亿元)", "第一产业 同比增长", "第二产业 绝对值(亿元)", "第二产业 同比增长", "第三产业 绝对值(亿元)", "第三产业 同比增长"] + columns = ["季度", "国内生产总值(亿元)", "同比增长", "第一产业(亿元)", "同比增长", "第二产业(亿元)", "同比增长", "第三产业(亿元)", "同比增长"] data_df = pd.DataFrame(res_list, columns=columns) return data_df @@ -123,7 +123,7 @@ def get_pmi(): 获取采购经理人指数(PMI) -------- DataFrame - "月份", "制造业指数", "制造业同比增长", "非制造业指数", "非制造业同比增长" + "月份", "制造业指数", "同比增长", "非制造业指数", "同比增长" """ url = "http://datainterface.eastmoney.com/EM_DataCenter/JS.aspx" params = { @@ -140,7 +140,7 @@ def get_pmi(): res_list = [] for li in tmp_list: res_list.append(li.split(',')) - columns = ["月份", "制造业指数", "制造业同比增长", "非制造业指数", "非制造业同比增长"] + columns = ["月份", "制造业指数", "同比增长", "非制造业指数", "同比增长"] data_df = pd.DataFrame(res_list, columns=columns) return data_df @@ -177,7 +177,7 @@ def get_money_supply(): 获取货币供应量数据 -------- DataFrame - "月份", "货币和准货币(M2) 数量(亿元)", "货币和准货币(M2) 同比增长", "货币和准货币(M2) 环比增长", "货币(M1) 数量(亿元)", "货币(M1) 同比增长 ", "货币(M1) 环比增长", "流通中的现金(M0) 数量(亿元)", "流通中的现金(M0) 同比增长", "流通中的现金(M0) 环比增长" + "月份", "货币M2(亿元)", "同比增长", "环比增长", "货币M1 数量(亿元)", "同比增长 ", "环比增长", "流通中的现金(M0) 数量(亿元)", "同比增长", "环比增长" """ url = "http://datainterface.eastmoney.com/EM_DataCenter/JS.aspx" params = { @@ -205,7 +205,7 @@ def get_gold_and_foreign_reserves(): Returns ------- DataFrame - "月份", "国家外汇储备(亿美元) 数值", "国家外汇储备(亿美元) 同比", "国家外汇储备(亿美元) 环比", "黄金储备(万盎司) 数值", "黄金储备(万盎司) 同比", "黄金储备(万盎司) 环比" + "月份", "国家外汇储备(亿美元) 数值", "同比", "环比", "黄金储备(万盎司) 数值", "同比", "环比" """ url = "http://datainterface.eastmoney.com/EM_DataCenter/JS.aspx" params = { diff --git a/gopup/economic/shibor.py b/gopup/economic/shibor.py index a6d1711..c94f432 100644 --- a/gopup/economic/shibor.py +++ b/gopup/economic/shibor.py @@ -14,12 +14,9 @@ from gopup.utils import date_utils as du -def shibor_data(year=None): +def shibor_data(): """ 获取上海银行间同业拆放利率(Shibor) - Parameters - ------ - year:年份(int) Return ------ @@ -32,16 +29,10 @@ def shibor_data(year=None): 6M:6个月拆放利率 9M:9个月拆放利率 1Y:1年拆放利率 - - http://www.shibor.org/shibor/web/html/downLoad.html?nameNew=Historical_Shibor_Data_2019.xls&downLoadPath=data&nameOld=Shibor数据2019.xls&shiborSrc=http://www.shibor.org/shibor/ + https://www.shibor.org/dqs/rest/cm-u-bk-shibor/ShiborHisExcel?lang=cn """ - year = du.get_year() if year is None else year - lab = cons.SHIBOR_TYPE['Shibor'] try: - url = cons.SHIBOR_DATA_URL % (cons.P_TYPE['http'], cons.DOMAINS['shibor'], - cons.PAGES['dw'], 'Shibor', - year, lab, - year) + url = 'https://www.shibor.org/dqs/rest/cm-u-bk-shibor/ShiborHisExcel?lang=cn' herder = { "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Language": "zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3", @@ -51,8 +42,6 @@ def shibor_data(year=None): r = requests.get(url, headers=herder) df = pd.read_excel(r.content) - df.columns = cons.SHIBOR_COLS - df['date'] = df['date'].map(lambda x: x.date()) return df except Exception as e: return None @@ -110,25 +99,16 @@ def shibor_quote_data(year=None): return None -def shibor_ma_data(year=None): +def shibor_ma_data(): """ 获取Shibor均值数据 - Parameters - ------ - year:年份(int) - Return ------ date:日期 其它分别为各周期5、10、20均价 """ - year = du.get_year() if year is None else year - lab = cons.SHIBOR_TYPE['Tendency'] try: - url = cons.SHIBOR_DATA_URL % (cons.P_TYPE['http'], cons.DOMAINS['shibor'], - cons.PAGES['dw'], 'Shibor_Tendency', - year, lab, - year) + url = 'https://www.shibor.org/dqs/rest/cm-u-bk-shibor/ShiborMnHisExcel?lang=cn' herder = { "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Language": "zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3", @@ -138,8 +118,6 @@ def shibor_ma_data(year=None): r = requests.get(url, headers=herder) df = pd.read_excel(r.content) - df.columns = cons.SHIBOR_MA_COLS - df['date'] = df['date'].map(lambda x: x.date()) return df except: return None @@ -185,7 +163,7 @@ def lpr_data(startDate, endDate): if __name__ == "__main__": - tmp = shibor_data(2019) + tmp = shibor_data() print(tmp)