akshare 1.14.77__tar.gz → 1.14.79__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of akshare might be problematic. Click here for more details.
- {akshare-1.14.77 → akshare-1.14.79}/PKG-INFO +1 -1
- {akshare-1.14.77 → akshare-1.14.79}/akshare/__init__.py +4 -1
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_xq.py +1 -1
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_analyst_em.py +36 -27
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_report_em.py +147 -3
- {akshare-1.14.77 → akshare-1.14.79}/akshare.egg-info/PKG-INFO +1 -1
- {akshare-1.14.77 → akshare-1.14.79}/LICENSE +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/README.md +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/air/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/air/air_hebei.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/air/air_zhenqi.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/air/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/air/crypto.js +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/air/outcrypto.js +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/air/sunrise_tad.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/article/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/article/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/article/epu_index.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/article/ff_factor.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/article/fred_md.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/article/risk_rv.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bank/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bank/bank_cbirc_2020.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bank/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_cb_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_cb_ths.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_cbond.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_china.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_china_money.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_convert.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_info_cm.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_investing.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_issue_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_nafmii.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_summary.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_zh_cov.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/bond_zh_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/bond/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/cost/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/cost/cost_living.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/crypto/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/crypto/crypto_bitcoin_cme.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/crypto/crypto_hist_investing.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/crypto/crypto_hold.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/currency/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/currency/currency.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/currency/currency_china_bank_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/currency/currency_safe.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/data/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/data/cninfo.js +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/data/crypto_info.zip +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/data/ths.js +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/datasets.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_australia.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_bank.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_canada.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_china.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_china_hk.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_china_nbs.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_constitute.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_euro.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_finance_ths.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_germany.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_info_ws.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_japan.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_other.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_swiss.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_uk.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/macro_usa.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/economic/marco_cnbs.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/energy/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/energy/energy_carbon.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/energy/energy_oil_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/event/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/event/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/event/migration.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/file_fold/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/file_fold/calendar.json +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fortune/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fortune/fortune_500.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fortune/fortune_bloomberg.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fortune/fortune_forbes_500.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fortune/fortune_hurun.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fortune/fortune_xincaifu_500.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_amac.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_announcement.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_aum_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_etf_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_etf_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_etf_ths.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_fhsp_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_init_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_lof_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_manager.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_portfolio_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_position_lg.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_rank_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_rating.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_report_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_scale_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_scale_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fund/fund_xq.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/cot.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_basis.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_comex_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_comm_ctp.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_comm_qihuo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_contract_detail.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_daily_bar.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_foreign.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_hf_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_hq_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_index_ccidx.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_international.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_inventory_99.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_inventory_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_news_baidu.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_news_shmet.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_roll_yield.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_rule.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_settlement_price_sgx.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_spot_stock_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_stock_js.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_to_spot.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_warehouse_receipt.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/futures_zh_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/inventory_data.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/receipt.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/requests_fun.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures/symbol_var.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_contract_info_cffex.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_contract_info_czce.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_contract_info_dce.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_contract_info_gfex.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_contract_info_ine.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_contract_info_shfe.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_cot_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_hog.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_index_price_nh.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_index_return_nh.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_index_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_index_volatility_nh.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_other_index_nh.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/futures_derivative/futures_spot_sys.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fx/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fx/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fx/currency_investing.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fx/fx_quote.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/fx/fx_quote_baidu.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/hf/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/hf/hf_sp500.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_cflp.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_cni.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_cx.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_drewry.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_eri.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_fear_greed_funddb.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_hog.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_investing.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_kq_fz.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_kq_ss.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_option_qvix.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_research_fund_sw.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_research_sw.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_spot.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_stock_hk.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_stock_us_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_stock_zh.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_stock_zh_csindex.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_sugar.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_sw.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_yw.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_zh_a_scope.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/index/index_zh_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/interest_rate/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/interest_rate/interbank_rate_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/movie/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/movie/artist_yien.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/movie/jm.js +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/movie/movie_yien.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/movie/video_yien.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/news/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/news/news_baidu.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/news/news_cctv.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/news/news_stock.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/nlp/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/nlp/nlp_interface.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_comm_qihuo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_commodity.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_commodity_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_czce.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_daily_stats_sse_szse.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_finance.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_finance_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_lhb_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_premium_analysis_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_risk_analysis_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_risk_indicator_sse.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/option/option_value_analysis_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/other/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/other/other_car_cpca.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/other/other_car_gasgoo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/pro/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/pro/client.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/pro/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/pro/data_pro.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/qhkc/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/qhkc/qhkc_api.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/qhkc_web/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/qhkc_web/qhkc_fund.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/qhkc_web/qhkc_index.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/qhkc_web/qhkc_tool.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/rate/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/rate/repo_rate.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/reits/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/reits/reits_basic.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/sport/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/sport/sport_olympic.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/spot/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/spot/spot_hog_soozhu.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/spot/spot_price_qh.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/spot/spot_sge.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_allotment_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_ask_bid_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_board_concept_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_board_industry_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_cg_equity_mortgage.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_cg_guarantee.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_cg_lawsuit.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_dividend_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_dzjy_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_fund_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_fund_hold.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_gsrl_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_hk_famous.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_hk_fhpx_ths.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_hk_hot_rank_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_hk_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_hold_control_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_hold_control_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_hold_num_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_hot_rank_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_hot_search_baidu.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_hot_up_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_industry.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_industry_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_industry_pe_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_industry_sw.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_info.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_info_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_intraday_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_intraday_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_ipo_summary_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_new_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_news_cx.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_profile_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_rank_forecast.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_repurchase_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_share_changes_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_share_hold.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_stop.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_summary.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_us_famous.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_us_js.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_us_pink.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_us_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_weibo_nlp.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_zh_a_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_zh_a_special.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_zh_a_tick_tx.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_zh_ah_tx.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_zh_b_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_zh_kcb_report.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock/stock_zh_kcb_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_a_below_net_asset_statistics.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_a_high_low.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_a_indicator.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_a_pe_and_pb.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_account_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_all_pb.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_board_industry_ths.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_buffett_index_lg.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_classify_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_comment_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_concept_futu.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_congestion_lg.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_cyq_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_disclosure_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_dxsyl_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_ebs_lg.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_esg_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_fhps_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_fhps_ths.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_fund_flow.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_gddh_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_gdfx_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_gdhs.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_gdzjc_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_gpzy_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_gxl_lg.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_hist_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_hist_tx.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_hk_valuation_baidu.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_hot_xq.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_hsgt_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_hsgt_exchange_rate.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_hsgt_min_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_info.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_inner_trade_xq.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_irm_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_jgdy_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_lh_yybpm.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_lhb_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_lhb_sina.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_margin_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_margin_sse.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_margin_szse.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_market_legu.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_pankou_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_qsjy_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_research_report_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_sns_sseinfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_sy_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_technology_ths.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_tfp_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_three_report_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_ttm_lyr.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_wencai.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_yjbb_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_yjyg_cninfo.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_yjyg_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_yzxdr_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_zdhtmx_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_zf_pg.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_zh_valuation_baidu.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_zh_vote_baidu.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/stock_ztb_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_feature/ths.js +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_finance.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_finance_hk.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_finance_ths.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_hold.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_ipo_declare.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_kcb_detail_sse.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_kcb_sse.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_mda_ym.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_notice.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_profit_forecast_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_profit_forecast_hk_etnet.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_profit_forecast_ths.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_recommend.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_register_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_restricted_em.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_zygc.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/stock_fundamental/stock_zyjs_ths.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/tool/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/tool/trade_date_hist.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/utils/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/utils/cons.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/utils/demjson.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/utils/func.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/utils/token_process.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare/utils/tqdm.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare.egg-info/SOURCES.txt +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare.egg-info/dependency_links.txt +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare.egg-info/requires.txt +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/akshare.egg-info/top_level.txt +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/pyproject.toml +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/setup.cfg +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/setup.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/tests/__init__.py +0 -0
- {akshare-1.14.77 → akshare-1.14.79}/tests/test_func.py +0 -0
|
@@ -2888,9 +2888,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
|
|
|
2888
2888
|
1.14.75 fix: fix stock_sy_hy_em interface
|
|
2889
2889
|
1.14.76 fix: fix stock_sy_em interface
|
|
2890
2890
|
1.14.77 fix: fix stock_zh_b_daily interface
|
|
2891
|
+
1.14.78 fix: fix stock_analyst_rank_em interface
|
|
2892
|
+
1.14.79 add: add stock_zcfz_bj_em interface
|
|
2891
2893
|
"""
|
|
2892
2894
|
|
|
2893
|
-
__version__ = "1.14.
|
|
2895
|
+
__version__ = "1.14.79"
|
|
2894
2896
|
__author__ = "AKFamily"
|
|
2895
2897
|
|
|
2896
2898
|
import sys
|
|
@@ -4111,6 +4113,7 @@ from akshare.stock_fundamental.stock_ipo_declare import stock_ipo_declare
|
|
|
4111
4113
|
"""
|
|
4112
4114
|
from akshare.stock_feature.stock_report_em import (
|
|
4113
4115
|
stock_zcfz_em,
|
|
4116
|
+
stock_zcfz_bj_em,
|
|
4114
4117
|
stock_lrb_em,
|
|
4115
4118
|
stock_xjll_em,
|
|
4116
4119
|
)
|
|
@@ -48,7 +48,7 @@ def stock_individual_spot_xq(
|
|
|
48
48
|
"""
|
|
49
49
|
session = requests.Session()
|
|
50
50
|
headers = {
|
|
51
|
-
"cookie": "xq_a_token=
|
|
51
|
+
"cookie": "xq_a_token=927886df384cbb16c88673ae7f519c76650c54b9;",
|
|
52
52
|
"User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 "
|
|
53
53
|
"(KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",
|
|
54
54
|
}
|
|
@@ -5,12 +5,14 @@ Date: 2023/8/20 20:00
|
|
|
5
5
|
Desc: 东方财富网-数据中心-研究报告-东方财富分析师指数
|
|
6
6
|
https://data.eastmoney.com/invest/invest/list.html
|
|
7
7
|
"""
|
|
8
|
+
|
|
8
9
|
import pandas as pd
|
|
9
10
|
import requests
|
|
10
|
-
from tqdm import
|
|
11
|
+
from akshare.utils.tqdm import get_tqdm
|
|
12
|
+
from akshare.utils.cons import headers
|
|
11
13
|
|
|
12
14
|
|
|
13
|
-
def stock_analyst_rank_em(year: str = "
|
|
15
|
+
def stock_analyst_rank_em(year: str = "2024") -> pd.DataFrame:
|
|
14
16
|
"""
|
|
15
17
|
东方财富网-数据中心-研究报告-东方财富分析师指数-东方财富分析师指数
|
|
16
18
|
https://data.eastmoney.com/invest/invest/list.html
|
|
@@ -20,9 +22,6 @@ def stock_analyst_rank_em(year: str = "2023") -> pd.DataFrame:
|
|
|
20
22
|
:rtype: pandas.DataFrame
|
|
21
23
|
"""
|
|
22
24
|
url = "https://data.eastmoney.com/dataapi/invest/list"
|
|
23
|
-
headers = {
|
|
24
|
-
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36"
|
|
25
|
-
}
|
|
26
25
|
params = {
|
|
27
26
|
"sortColumns": "YEAR_YIELD",
|
|
28
27
|
"sortTypes": "-1",
|
|
@@ -40,12 +39,13 @@ def stock_analyst_rank_em(year: str = "2023") -> pd.DataFrame:
|
|
|
40
39
|
data_json = r.json()
|
|
41
40
|
total_page = data_json["result"]["pages"]
|
|
42
41
|
big_df = pd.DataFrame()
|
|
42
|
+
tqdm = get_tqdm()
|
|
43
43
|
for page in tqdm(range(1, total_page + 1), leave=False):
|
|
44
44
|
params.update({"pageNumber": page})
|
|
45
45
|
r = requests.get(url, params=params, headers=headers)
|
|
46
46
|
data_json = r.json()
|
|
47
47
|
data_df = pd.DataFrame(data_json["result"]["data"])
|
|
48
|
-
big_df = pd.concat([big_df, data_df], ignore_index=True)
|
|
48
|
+
big_df = pd.concat(objs=[big_df, data_df], ignore_index=True)
|
|
49
49
|
|
|
50
50
|
big_df.reset_index(inplace=True)
|
|
51
51
|
big_df["index"] = list(range(1, len(big_df) + 1))
|
|
@@ -92,7 +92,9 @@ def stock_analyst_rank_em(year: str = "2023") -> pd.DataFrame:
|
|
|
92
92
|
]
|
|
93
93
|
big_df["更新日期"] = pd.to_datetime(big_df["更新日期"], errors="coerce").dt.date
|
|
94
94
|
big_df["年度指数"] = pd.to_numeric(big_df["年度指数"], errors="coerce")
|
|
95
|
-
big_df[f"{year}年收益率"] = pd.to_numeric(
|
|
95
|
+
big_df[f"{year}年收益率"] = pd.to_numeric(
|
|
96
|
+
big_df[f"{year}年收益率"], errors="coerce"
|
|
97
|
+
)
|
|
96
98
|
big_df["3个月收益率"] = pd.to_numeric(big_df["3个月收益率"], errors="coerce")
|
|
97
99
|
big_df["6个月收益率"] = pd.to_numeric(big_df["6个月收益率"], errors="coerce")
|
|
98
100
|
big_df["12个月收益率"] = pd.to_numeric(big_df["12个月收益率"], errors="coerce")
|
|
@@ -114,9 +116,6 @@ def stock_analyst_detail_em(
|
|
|
114
116
|
:rtype: pandas.DataFrame
|
|
115
117
|
"""
|
|
116
118
|
url = "https://datacenter.eastmoney.com/special/api/data/v1/get"
|
|
117
|
-
headers = {
|
|
118
|
-
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36"
|
|
119
|
-
}
|
|
120
119
|
if indicator == "最新跟踪成分股":
|
|
121
120
|
params = {
|
|
122
121
|
"reportName": "RPT_RESEARCHER_NTCSTOCK",
|
|
@@ -132,7 +131,7 @@ def stock_analyst_detail_em(
|
|
|
132
131
|
}
|
|
133
132
|
r = requests.get(url, params=params, headers=headers)
|
|
134
133
|
data_json = r.json()
|
|
135
|
-
temp_df = pd.DataFrame(data_json["result"][
|
|
134
|
+
temp_df = pd.DataFrame(data_json["result"]["data"])
|
|
136
135
|
temp_df.reset_index(inplace=True)
|
|
137
136
|
temp_df["index"] = list(range(1, len(temp_df) + 1))
|
|
138
137
|
temp_df.columns = [
|
|
@@ -164,9 +163,15 @@ def stock_analyst_detail_em(
|
|
|
164
163
|
"阶段涨跌幅",
|
|
165
164
|
]
|
|
166
165
|
]
|
|
167
|
-
temp_df["调入日期"] = pd.to_datetime(
|
|
168
|
-
|
|
169
|
-
|
|
166
|
+
temp_df["调入日期"] = pd.to_datetime(
|
|
167
|
+
temp_df["调入日期"], errors="coerce"
|
|
168
|
+
).dt.date
|
|
169
|
+
temp_df["最新评级日期"] = pd.to_datetime(
|
|
170
|
+
temp_df["最新评级日期"], errors="coerce"
|
|
171
|
+
).dt.date
|
|
172
|
+
temp_df["成交价格(前复权)"] = pd.to_numeric(
|
|
173
|
+
temp_df["成交价格(前复权)"], errors="coerce"
|
|
174
|
+
)
|
|
170
175
|
temp_df["最新价格"] = pd.to_numeric(temp_df["最新价格"], errors="coerce")
|
|
171
176
|
temp_df["阶段涨跌幅"] = pd.to_numeric(temp_df["阶段涨跌幅"], errors="coerce")
|
|
172
177
|
return temp_df
|
|
@@ -185,7 +190,7 @@ def stock_analyst_detail_em(
|
|
|
185
190
|
}
|
|
186
191
|
r = requests.get(url, params=params, headers=headers)
|
|
187
192
|
data_json = r.json()
|
|
188
|
-
temp_df = pd.DataFrame(data_json["result"][
|
|
193
|
+
temp_df = pd.DataFrame(data_json["result"]["data"])
|
|
189
194
|
temp_df.reset_index(inplace=True)
|
|
190
195
|
temp_df["index"] = list(range(1, len(temp_df) + 1))
|
|
191
196
|
temp_df.columns = [
|
|
@@ -214,8 +219,12 @@ def stock_analyst_detail_em(
|
|
|
214
219
|
"累计涨跌幅",
|
|
215
220
|
]
|
|
216
221
|
]
|
|
217
|
-
temp_df["调入日期"] = pd.to_datetime(
|
|
218
|
-
|
|
222
|
+
temp_df["调入日期"] = pd.to_datetime(
|
|
223
|
+
temp_df["调入日期"], errors="coerce"
|
|
224
|
+
).dt.date
|
|
225
|
+
temp_df["调出日期"] = pd.to_datetime(
|
|
226
|
+
temp_df["调出日期"], errors="coerce"
|
|
227
|
+
).dt.date
|
|
219
228
|
temp_df["累计涨跌幅"] = pd.to_numeric(temp_df["累计涨跌幅"], errors="coerce")
|
|
220
229
|
return temp_df
|
|
221
230
|
elif indicator == "历史指数":
|
|
@@ -231,22 +240,22 @@ def stock_analyst_detail_em(
|
|
|
231
240
|
}
|
|
232
241
|
r = requests.get(url, params=params, headers=headers)
|
|
233
242
|
data_json = r.json()
|
|
234
|
-
temp_df = pd.DataFrame(
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
]
|
|
241
|
-
temp_df.columns = [
|
|
243
|
+
temp_df = pd.DataFrame(data_json["result"]["data"])
|
|
244
|
+
temp_df = temp_df[
|
|
245
|
+
[
|
|
246
|
+
"TRADE_DATE",
|
|
247
|
+
"INDEX_HVALUE",
|
|
248
|
+
]
|
|
249
|
+
]
|
|
250
|
+
temp_df.columns = ["date", "value"]
|
|
242
251
|
temp_df["date"] = pd.to_datetime(temp_df["date"], errors="coerce").dt.date
|
|
243
252
|
temp_df["value"] = pd.to_numeric(temp_df["value"], errors="coerce")
|
|
244
|
-
temp_df.sort_values([
|
|
253
|
+
temp_df.sort_values(["date"], inplace=True, ignore_index=True)
|
|
245
254
|
return temp_df
|
|
246
255
|
|
|
247
256
|
|
|
248
257
|
if __name__ == "__main__":
|
|
249
|
-
stock_analyst_rank_em_df = stock_analyst_rank_em(year="
|
|
258
|
+
stock_analyst_rank_em_df = stock_analyst_rank_em(year="2024")
|
|
250
259
|
print(stock_analyst_rank_em_df)
|
|
251
260
|
|
|
252
261
|
stock_analyst_detail_em_df = stock_analyst_detail_em(
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
# -*- coding:utf-8 -*-
|
|
3
3
|
"""
|
|
4
|
-
Date: 2024/
|
|
4
|
+
Date: 2024/9/20 15:30
|
|
5
5
|
Desc: 东方财富-数据中心-年报季报-业绩快报-三大报表
|
|
6
6
|
资产负债表
|
|
7
7
|
https://data.eastmoney.com/bbsj/202003/zcfz.html
|
|
@@ -17,7 +17,7 @@ import requests
|
|
|
17
17
|
from akshare.utils.tqdm import get_tqdm
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
def stock_zcfz_em(date: str = "
|
|
20
|
+
def stock_zcfz_em(date: str = "20240331") -> pd.DataFrame:
|
|
21
21
|
"""
|
|
22
22
|
东方财富-数据中心-年报季报-业绩快报-资产负债表
|
|
23
23
|
https://data.eastmoney.com/bbsj/202003/zcfz.html
|
|
@@ -158,6 +158,147 @@ def stock_zcfz_em(date: str = "20220331") -> pd.DataFrame:
|
|
|
158
158
|
return big_df
|
|
159
159
|
|
|
160
160
|
|
|
161
|
+
def stock_zcfz_bj_em(date: str = "20240331") -> pd.DataFrame:
|
|
162
|
+
"""
|
|
163
|
+
东方财富-数据中心-年报季报-业绩快报-资产负债表
|
|
164
|
+
https://data.eastmoney.com/bbsj/202003/zcfz.html
|
|
165
|
+
:param date: choice of {"20200331", "20200630", "20200930", "20201231", "..."}; 从 20100331 开始
|
|
166
|
+
:type date: str
|
|
167
|
+
:return: 资产负债表
|
|
168
|
+
:rtype: pandas.DataFrame
|
|
169
|
+
"""
|
|
170
|
+
import warnings
|
|
171
|
+
|
|
172
|
+
warnings.filterwarnings(action="ignore", category=FutureWarning)
|
|
173
|
+
url = "https://datacenter-web.eastmoney.com/api/data/v1/get"
|
|
174
|
+
params = {
|
|
175
|
+
"sortColumns": "NOTICE_DATE,SECURITY_CODE",
|
|
176
|
+
"sortTypes": "-1,-1",
|
|
177
|
+
"pageSize": "500",
|
|
178
|
+
"pageNumber": "1",
|
|
179
|
+
"reportName": "RPT_DMSK_FN_BALANCE",
|
|
180
|
+
"columns": "ALL",
|
|
181
|
+
"filter": f"""(TRADE_MARKET_CODE="069001017")
|
|
182
|
+
(REPORT_DATE='{'-'.join([date[:4], date[4:6], date[6:]])}')""",
|
|
183
|
+
}
|
|
184
|
+
r = requests.get(url, params=params)
|
|
185
|
+
data_json = r.json()
|
|
186
|
+
page_num = data_json["result"]["pages"]
|
|
187
|
+
big_df = pd.DataFrame()
|
|
188
|
+
tqdm = get_tqdm()
|
|
189
|
+
for page in tqdm(range(1, page_num + 1), leave=False):
|
|
190
|
+
params.update(
|
|
191
|
+
{
|
|
192
|
+
"pageNumber": page,
|
|
193
|
+
}
|
|
194
|
+
)
|
|
195
|
+
r = requests.get(url, params=params)
|
|
196
|
+
data_json = r.json()
|
|
197
|
+
temp_df = pd.DataFrame(data_json["result"]["data"])
|
|
198
|
+
big_df = pd.concat(objs=[big_df, temp_df], join="outer", ignore_index=True)
|
|
199
|
+
|
|
200
|
+
big_df.reset_index(inplace=True)
|
|
201
|
+
big_df["index"] = big_df.index + 1
|
|
202
|
+
big_df.columns = [
|
|
203
|
+
"序号",
|
|
204
|
+
"_",
|
|
205
|
+
"股票代码",
|
|
206
|
+
"_",
|
|
207
|
+
"_",
|
|
208
|
+
"股票简称",
|
|
209
|
+
"_",
|
|
210
|
+
"_",
|
|
211
|
+
"_",
|
|
212
|
+
"_",
|
|
213
|
+
"_",
|
|
214
|
+
"_",
|
|
215
|
+
"_",
|
|
216
|
+
"公告日期",
|
|
217
|
+
"_",
|
|
218
|
+
"资产-总资产",
|
|
219
|
+
"_",
|
|
220
|
+
"资产-货币资金",
|
|
221
|
+
"_",
|
|
222
|
+
"资产-应收账款",
|
|
223
|
+
"_",
|
|
224
|
+
"资产-存货",
|
|
225
|
+
"_",
|
|
226
|
+
"负债-总负债",
|
|
227
|
+
"负债-应付账款",
|
|
228
|
+
"_",
|
|
229
|
+
"负债-预收账款",
|
|
230
|
+
"_",
|
|
231
|
+
"股东权益合计",
|
|
232
|
+
"_",
|
|
233
|
+
"资产-总资产同比",
|
|
234
|
+
"负债-总负债同比",
|
|
235
|
+
"_",
|
|
236
|
+
"资产负债率",
|
|
237
|
+
"_",
|
|
238
|
+
"_",
|
|
239
|
+
"_",
|
|
240
|
+
"_",
|
|
241
|
+
"_",
|
|
242
|
+
"_",
|
|
243
|
+
"_",
|
|
244
|
+
"_",
|
|
245
|
+
"_",
|
|
246
|
+
"_",
|
|
247
|
+
"_",
|
|
248
|
+
"_",
|
|
249
|
+
"_",
|
|
250
|
+
"_",
|
|
251
|
+
"_",
|
|
252
|
+
"_",
|
|
253
|
+
"_",
|
|
254
|
+
"_",
|
|
255
|
+
"_",
|
|
256
|
+
"_",
|
|
257
|
+
"_",
|
|
258
|
+
"_",
|
|
259
|
+
"_",
|
|
260
|
+
"_",
|
|
261
|
+
]
|
|
262
|
+
big_df = big_df[
|
|
263
|
+
[
|
|
264
|
+
"序号",
|
|
265
|
+
"股票代码",
|
|
266
|
+
"股票简称",
|
|
267
|
+
"资产-货币资金",
|
|
268
|
+
"资产-应收账款",
|
|
269
|
+
"资产-存货",
|
|
270
|
+
"资产-总资产",
|
|
271
|
+
"资产-总资产同比",
|
|
272
|
+
"负债-应付账款",
|
|
273
|
+
"负债-预收账款",
|
|
274
|
+
"负债-总负债",
|
|
275
|
+
"负债-总负债同比",
|
|
276
|
+
"资产负债率",
|
|
277
|
+
"股东权益合计",
|
|
278
|
+
"公告日期",
|
|
279
|
+
]
|
|
280
|
+
]
|
|
281
|
+
|
|
282
|
+
big_df["资产-货币资金"] = pd.to_numeric(big_df["资产-货币资金"], errors="coerce")
|
|
283
|
+
big_df["资产-应收账款"] = pd.to_numeric(big_df["资产-应收账款"], errors="coerce")
|
|
284
|
+
big_df["资产-存货"] = pd.to_numeric(big_df["资产-存货"], errors="coerce")
|
|
285
|
+
big_df["资产-总资产"] = pd.to_numeric(big_df["资产-总资产"], errors="coerce")
|
|
286
|
+
big_df["资产-总资产同比"] = pd.to_numeric(
|
|
287
|
+
big_df["资产-总资产同比"], errors="coerce"
|
|
288
|
+
)
|
|
289
|
+
big_df["负债-应付账款"] = pd.to_numeric(big_df["负债-应付账款"], errors="coerce")
|
|
290
|
+
big_df["负债-预收账款"] = pd.to_numeric(big_df["负债-预收账款"], errors="coerce")
|
|
291
|
+
big_df["负债-总负债"] = pd.to_numeric(big_df["负债-总负债"], errors="coerce")
|
|
292
|
+
big_df["负债-总负债同比"] = pd.to_numeric(
|
|
293
|
+
big_df["负债-总负债同比"], errors="coerce"
|
|
294
|
+
)
|
|
295
|
+
big_df["资产负债率"] = pd.to_numeric(big_df["资产负债率"], errors="coerce")
|
|
296
|
+
big_df["股东权益合计"] = pd.to_numeric(big_df["股东权益合计"], errors="coerce")
|
|
297
|
+
big_df["股东权益合计"] = pd.to_numeric(big_df["股东权益合计"], errors="coerce")
|
|
298
|
+
big_df["公告日期"] = pd.to_datetime(big_df["公告日期"], errors="coerce").dt.date
|
|
299
|
+
return big_df
|
|
300
|
+
|
|
301
|
+
|
|
161
302
|
def stock_lrb_em(date: str = "20081231") -> pd.DataFrame:
|
|
162
303
|
"""
|
|
163
304
|
东方财富-数据中心-年报季报-业绩快报-利润表
|
|
@@ -432,9 +573,12 @@ def stock_xjll_em(date: str = "20220331") -> pd.DataFrame:
|
|
|
432
573
|
|
|
433
574
|
|
|
434
575
|
if __name__ == "__main__":
|
|
435
|
-
stock_zcfz_em_df = stock_zcfz_em(date="
|
|
576
|
+
stock_zcfz_em_df = stock_zcfz_em(date="20240331")
|
|
436
577
|
print(stock_zcfz_em_df)
|
|
437
578
|
|
|
579
|
+
stock_zcfz_bj_em_df = stock_zcfz_bj_em(date="20240331")
|
|
580
|
+
print(stock_zcfz_bj_em_df)
|
|
581
|
+
|
|
438
582
|
stock_lrb_em_df = stock_lrb_em(date="20220331")
|
|
439
583
|
print(stock_lrb_em_df)
|
|
440
584
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|