akshare 1.15.97__tar.gz → 1.15.99__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.

Files changed (393) hide show
  1. {akshare-1.15.97 → akshare-1.15.99}/PKG-INFO +1 -1
  2. {akshare-1.15.97 → akshare-1.15.99}/akshare/__init__.py +3 -1
  3. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_zh_em.py +1 -1
  4. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_finance.py +58 -12
  5. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_board_concept_em.py +39 -7
  6. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_fund_em.py +6 -6
  7. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_esg_sina.py +17 -4
  8. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_hist_em.py +52 -151
  9. {akshare-1.15.97 → akshare-1.15.99}/akshare.egg-info/PKG-INFO +1 -1
  10. {akshare-1.15.97 → akshare-1.15.99}/LICENSE +0 -0
  11. {akshare-1.15.97 → akshare-1.15.99}/README.md +0 -0
  12. {akshare-1.15.97 → akshare-1.15.99}/akshare/air/__init__.py +0 -0
  13. {akshare-1.15.97 → akshare-1.15.99}/akshare/air/air_hebei.py +0 -0
  14. {akshare-1.15.97 → akshare-1.15.99}/akshare/air/air_zhenqi.py +0 -0
  15. {akshare-1.15.97 → akshare-1.15.99}/akshare/air/cons.py +0 -0
  16. {akshare-1.15.97 → akshare-1.15.99}/akshare/air/crypto.js +0 -0
  17. {akshare-1.15.97 → akshare-1.15.99}/akshare/air/outcrypto.js +0 -0
  18. {akshare-1.15.97 → akshare-1.15.99}/akshare/air/sunrise_tad.py +0 -0
  19. {akshare-1.15.97 → akshare-1.15.99}/akshare/article/__init__.py +0 -0
  20. {akshare-1.15.97 → akshare-1.15.99}/akshare/article/cons.py +0 -0
  21. {akshare-1.15.97 → akshare-1.15.99}/akshare/article/epu_index.py +0 -0
  22. {akshare-1.15.97 → akshare-1.15.99}/akshare/article/ff_factor.py +0 -0
  23. {akshare-1.15.97 → akshare-1.15.99}/akshare/article/fred_md.py +0 -0
  24. {akshare-1.15.97 → akshare-1.15.99}/akshare/article/risk_rv.py +0 -0
  25. {akshare-1.15.97 → akshare-1.15.99}/akshare/bank/__init__.py +0 -0
  26. {akshare-1.15.97 → akshare-1.15.99}/akshare/bank/bank_cbirc_2020.py +0 -0
  27. {akshare-1.15.97 → akshare-1.15.99}/akshare/bank/cons.py +0 -0
  28. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/__init__.py +0 -0
  29. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_cb_sina.py +0 -0
  30. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_cb_ths.py +0 -0
  31. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_cbond.py +0 -0
  32. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_china.py +0 -0
  33. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_china_money.py +0 -0
  34. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_convert.py +0 -0
  35. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_em.py +0 -0
  36. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_info_cm.py +0 -0
  37. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_issue_cninfo.py +0 -0
  38. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_nafmii.py +0 -0
  39. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_summary.py +0 -0
  40. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_zh_cov.py +0 -0
  41. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/bond_zh_sina.py +0 -0
  42. {akshare-1.15.97 → akshare-1.15.99}/akshare/bond/cons.py +0 -0
  43. {akshare-1.15.97 → akshare-1.15.99}/akshare/cal/__init__.py +0 -0
  44. {akshare-1.15.97 → akshare-1.15.99}/akshare/cal/rv.py +0 -0
  45. {akshare-1.15.97 → akshare-1.15.99}/akshare/cost/__init__.py +0 -0
  46. {akshare-1.15.97 → akshare-1.15.99}/akshare/cost/cost_living.py +0 -0
  47. {akshare-1.15.97 → akshare-1.15.99}/akshare/crypto/__init__.py +0 -0
  48. {akshare-1.15.97 → akshare-1.15.99}/akshare/crypto/crypto_bitcoin_cme.py +0 -0
  49. {akshare-1.15.97 → akshare-1.15.99}/akshare/crypto/crypto_hold.py +0 -0
  50. {akshare-1.15.97 → akshare-1.15.99}/akshare/currency/__init__.py +0 -0
  51. {akshare-1.15.97 → akshare-1.15.99}/akshare/currency/currency.py +0 -0
  52. {akshare-1.15.97 → akshare-1.15.99}/akshare/currency/currency_china_bank_sina.py +0 -0
  53. {akshare-1.15.97 → akshare-1.15.99}/akshare/currency/currency_safe.py +0 -0
  54. {akshare-1.15.97 → akshare-1.15.99}/akshare/data/__init__.py +0 -0
  55. {akshare-1.15.97 → akshare-1.15.99}/akshare/data/cninfo.js +0 -0
  56. {akshare-1.15.97 → akshare-1.15.99}/akshare/data/crypto_info.zip +0 -0
  57. {akshare-1.15.97 → akshare-1.15.99}/akshare/data/ths.js +0 -0
  58. {akshare-1.15.97 → akshare-1.15.99}/akshare/datasets.py +0 -0
  59. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/__init__.py +0 -0
  60. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/cons.py +0 -0
  61. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_australia.py +0 -0
  62. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_bank.py +0 -0
  63. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_canada.py +0 -0
  64. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_china.py +0 -0
  65. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_china_hk.py +0 -0
  66. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_china_nbs.py +0 -0
  67. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_constitute.py +0 -0
  68. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_euro.py +0 -0
  69. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_finance_ths.py +0 -0
  70. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_germany.py +0 -0
  71. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_info_ws.py +0 -0
  72. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_japan.py +0 -0
  73. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_other.py +0 -0
  74. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_swiss.py +0 -0
  75. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_uk.py +0 -0
  76. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/macro_usa.py +0 -0
  77. {akshare-1.15.97 → akshare-1.15.99}/akshare/economic/marco_cnbs.py +0 -0
  78. {akshare-1.15.97 → akshare-1.15.99}/akshare/energy/__init__.py +0 -0
  79. {akshare-1.15.97 → akshare-1.15.99}/akshare/energy/energy_carbon.py +0 -0
  80. {akshare-1.15.97 → akshare-1.15.99}/akshare/energy/energy_oil_em.py +0 -0
  81. {akshare-1.15.97 → akshare-1.15.99}/akshare/event/__init__.py +0 -0
  82. {akshare-1.15.97 → akshare-1.15.99}/akshare/event/cons.py +0 -0
  83. {akshare-1.15.97 → akshare-1.15.99}/akshare/event/migration.py +0 -0
  84. {akshare-1.15.97 → akshare-1.15.99}/akshare/exceptions.py +0 -0
  85. {akshare-1.15.97 → akshare-1.15.99}/akshare/file_fold/__init__.py +0 -0
  86. {akshare-1.15.97 → akshare-1.15.99}/akshare/file_fold/calendar.json +0 -0
  87. {akshare-1.15.97 → akshare-1.15.99}/akshare/fortune/__init__.py +0 -0
  88. {akshare-1.15.97 → akshare-1.15.99}/akshare/fortune/fortune_500.py +0 -0
  89. {akshare-1.15.97 → akshare-1.15.99}/akshare/fortune/fortune_bloomberg.py +0 -0
  90. {akshare-1.15.97 → akshare-1.15.99}/akshare/fortune/fortune_forbes_500.py +0 -0
  91. {akshare-1.15.97 → akshare-1.15.99}/akshare/fortune/fortune_hurun.py +0 -0
  92. {akshare-1.15.97 → akshare-1.15.99}/akshare/fortune/fortune_xincaifu_500.py +0 -0
  93. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/__init__.py +0 -0
  94. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_amac.py +0 -0
  95. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_announcement.py +0 -0
  96. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_aum_em.py +0 -0
  97. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_em.py +0 -0
  98. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_etf_em.py +0 -0
  99. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_etf_sina.py +0 -0
  100. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_etf_ths.py +0 -0
  101. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_fee_em.py +0 -0
  102. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_fhsp_em.py +0 -0
  103. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_init_em.py +0 -0
  104. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_lof_em.py +0 -0
  105. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_manager.py +0 -0
  106. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_portfolio_em.py +0 -0
  107. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_position_lg.py +0 -0
  108. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_rank_em.py +0 -0
  109. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_rating.py +0 -0
  110. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_report_cninfo.py +0 -0
  111. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_scale_em.py +0 -0
  112. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_scale_sina.py +0 -0
  113. {akshare-1.15.97 → akshare-1.15.99}/akshare/fund/fund_xq.py +0 -0
  114. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/__init__.py +0 -0
  115. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/cons.py +0 -0
  116. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/cot.py +0 -0
  117. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_basis.py +0 -0
  118. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_comex_em.py +0 -0
  119. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_comm_ctp.py +0 -0
  120. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_comm_qihuo.py +0 -0
  121. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_contract_detail.py +0 -0
  122. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_daily_bar.py +0 -0
  123. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_foreign.py +0 -0
  124. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_hf_em.py +0 -0
  125. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_hist_em.py +0 -0
  126. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_hq_sina.py +0 -0
  127. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_index_ccidx.py +0 -0
  128. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_inventory_99.py +0 -0
  129. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_inventory_em.py +0 -0
  130. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_news_shmet.py +0 -0
  131. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_roll_yield.py +0 -0
  132. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_rule.py +0 -0
  133. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_rule_em.py +0 -0
  134. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_settlement_price_sgx.py +0 -0
  135. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_spot_stock_em.py +0 -0
  136. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_stock_js.py +0 -0
  137. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_to_spot.py +0 -0
  138. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_warehouse_receipt.py +0 -0
  139. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/futures_zh_sina.py +0 -0
  140. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/receipt.py +0 -0
  141. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/requests_fun.py +0 -0
  142. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures/symbol_var.py +0 -0
  143. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/__init__.py +0 -0
  144. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/cons.py +0 -0
  145. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/futures_contract_info_cffex.py +0 -0
  146. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/futures_contract_info_czce.py +0 -0
  147. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/futures_contract_info_dce.py +0 -0
  148. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/futures_contract_info_gfex.py +0 -0
  149. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/futures_contract_info_ine.py +0 -0
  150. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/futures_contract_info_shfe.py +0 -0
  151. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/futures_cot_sina.py +0 -0
  152. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/futures_hog.py +0 -0
  153. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/futures_index_sina.py +0 -0
  154. {akshare-1.15.97 → akshare-1.15.99}/akshare/futures_derivative/futures_spot_sys.py +0 -0
  155. {akshare-1.15.97 → akshare-1.15.99}/akshare/fx/__init__.py +0 -0
  156. {akshare-1.15.97 → akshare-1.15.99}/akshare/fx/cons.py +0 -0
  157. {akshare-1.15.97 → akshare-1.15.99}/akshare/fx/currency_investing.py +0 -0
  158. {akshare-1.15.97 → akshare-1.15.99}/akshare/fx/fx_quote.py +0 -0
  159. {akshare-1.15.97 → akshare-1.15.99}/akshare/fx/fx_quote_baidu.py +0 -0
  160. {akshare-1.15.97 → akshare-1.15.99}/akshare/hf/__init__.py +0 -0
  161. {akshare-1.15.97 → akshare-1.15.99}/akshare/hf/hf_sp500.py +0 -0
  162. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/__init__.py +0 -0
  163. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/cons.py +0 -0
  164. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_cflp.py +0 -0
  165. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_cni.py +0 -0
  166. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_cons.py +0 -0
  167. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_cx.py +0 -0
  168. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_drewry.py +0 -0
  169. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_eri.py +0 -0
  170. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_hog.py +0 -0
  171. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_kq_fz.py +0 -0
  172. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_kq_ss.py +0 -0
  173. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_option_qvix.py +0 -0
  174. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_research_fund_sw.py +0 -0
  175. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_research_sw.py +0 -0
  176. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_spot.py +0 -0
  177. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_stock_hk.py +0 -0
  178. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_stock_us_sina.py +0 -0
  179. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_stock_zh.py +0 -0
  180. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_stock_zh_csindex.py +0 -0
  181. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_sugar.py +0 -0
  182. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_sw.py +0 -0
  183. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_yw.py +0 -0
  184. {akshare-1.15.97 → akshare-1.15.99}/akshare/index/index_zh_a_scope.py +0 -0
  185. {akshare-1.15.97 → akshare-1.15.99}/akshare/interest_rate/__init__.py +0 -0
  186. {akshare-1.15.97 → akshare-1.15.99}/akshare/interest_rate/interbank_rate_em.py +0 -0
  187. {akshare-1.15.97 → akshare-1.15.99}/akshare/movie/__init__.py +0 -0
  188. {akshare-1.15.97 → akshare-1.15.99}/akshare/movie/artist_yien.py +0 -0
  189. {akshare-1.15.97 → akshare-1.15.99}/akshare/movie/jm.js +0 -0
  190. {akshare-1.15.97 → akshare-1.15.99}/akshare/movie/movie_yien.py +0 -0
  191. {akshare-1.15.97 → akshare-1.15.99}/akshare/movie/video_yien.py +0 -0
  192. {akshare-1.15.97 → akshare-1.15.99}/akshare/news/__init__.py +0 -0
  193. {akshare-1.15.97 → akshare-1.15.99}/akshare/news/news_baidu.py +0 -0
  194. {akshare-1.15.97 → akshare-1.15.99}/akshare/news/news_cctv.py +0 -0
  195. {akshare-1.15.97 → akshare-1.15.99}/akshare/news/news_stock.py +0 -0
  196. {akshare-1.15.97 → akshare-1.15.99}/akshare/nlp/__init__.py +0 -0
  197. {akshare-1.15.97 → akshare-1.15.99}/akshare/nlp/nlp_interface.py +0 -0
  198. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/__init__.py +0 -0
  199. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/cons.py +0 -0
  200. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_comm_qihuo.py +0 -0
  201. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_commodity.py +0 -0
  202. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_commodity_sina.py +0 -0
  203. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_czce.py +0 -0
  204. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_daily_stats_sse_szse.py +0 -0
  205. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_em.py +0 -0
  206. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_finance_sina.py +0 -0
  207. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_lhb_em.py +0 -0
  208. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_premium_analysis_em.py +0 -0
  209. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_risk_analysis_em.py +0 -0
  210. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_risk_indicator_sse.py +0 -0
  211. {akshare-1.15.97 → akshare-1.15.99}/akshare/option/option_value_analysis_em.py +0 -0
  212. {akshare-1.15.97 → akshare-1.15.99}/akshare/other/__init__.py +0 -0
  213. {akshare-1.15.97 → akshare-1.15.99}/akshare/other/other_car_cpca.py +0 -0
  214. {akshare-1.15.97 → akshare-1.15.99}/akshare/other/other_car_gasgoo.py +0 -0
  215. {akshare-1.15.97 → akshare-1.15.99}/akshare/pro/__init__.py +0 -0
  216. {akshare-1.15.97 → akshare-1.15.99}/akshare/pro/client.py +0 -0
  217. {akshare-1.15.97 → akshare-1.15.99}/akshare/pro/cons.py +0 -0
  218. {akshare-1.15.97 → akshare-1.15.99}/akshare/pro/data_pro.py +0 -0
  219. {akshare-1.15.97 → akshare-1.15.99}/akshare/qdii/__init__.py +0 -0
  220. {akshare-1.15.97 → akshare-1.15.99}/akshare/qdii/qdii_jsl.py +0 -0
  221. {akshare-1.15.97 → akshare-1.15.99}/akshare/qhkc/__init__.py +0 -0
  222. {akshare-1.15.97 → akshare-1.15.99}/akshare/qhkc/qhkc_api.py +0 -0
  223. {akshare-1.15.97 → akshare-1.15.99}/akshare/qhkc_web/__init__.py +0 -0
  224. {akshare-1.15.97 → akshare-1.15.99}/akshare/qhkc_web/qhkc_fund.py +0 -0
  225. {akshare-1.15.97 → akshare-1.15.99}/akshare/qhkc_web/qhkc_index.py +0 -0
  226. {akshare-1.15.97 → akshare-1.15.99}/akshare/qhkc_web/qhkc_tool.py +0 -0
  227. {akshare-1.15.97 → akshare-1.15.99}/akshare/rate/__init__.py +0 -0
  228. {akshare-1.15.97 → akshare-1.15.99}/akshare/rate/repo_rate.py +0 -0
  229. {akshare-1.15.97 → akshare-1.15.99}/akshare/reits/__init__.py +0 -0
  230. {akshare-1.15.97 → akshare-1.15.99}/akshare/reits/reits_basic.py +0 -0
  231. {akshare-1.15.97 → akshare-1.15.99}/akshare/request.py +0 -0
  232. {akshare-1.15.97 → akshare-1.15.99}/akshare/sport/__init__.py +0 -0
  233. {akshare-1.15.97 → akshare-1.15.99}/akshare/sport/sport_olympic.py +0 -0
  234. {akshare-1.15.97 → akshare-1.15.99}/akshare/spot/__init__.py +0 -0
  235. {akshare-1.15.97 → akshare-1.15.99}/akshare/spot/spot_hog_soozhu.py +0 -0
  236. {akshare-1.15.97 → akshare-1.15.99}/akshare/spot/spot_price_qh.py +0 -0
  237. {akshare-1.15.97 → akshare-1.15.99}/akshare/spot/spot_sge.py +0 -0
  238. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/__init__.py +0 -0
  239. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/cons.py +0 -0
  240. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_allotment_cninfo.py +0 -0
  241. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_ask_bid_em.py +0 -0
  242. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_board_industry_em.py +0 -0
  243. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_cg_equity_mortgage.py +0 -0
  244. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_cg_guarantee.py +0 -0
  245. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_cg_lawsuit.py +0 -0
  246. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_dividend_cninfo.py +0 -0
  247. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_dzjy_em.py +0 -0
  248. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_fund_hold.py +0 -0
  249. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_gsrl_em.py +0 -0
  250. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_hk_famous.py +0 -0
  251. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_hk_fhpx_ths.py +0 -0
  252. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_hk_hot_rank_em.py +0 -0
  253. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_hk_sina.py +0 -0
  254. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_hold_control_cninfo.py +0 -0
  255. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_hold_control_em.py +0 -0
  256. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_hold_num_cninfo.py +0 -0
  257. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_hot_rank_em.py +0 -0
  258. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_hot_search_baidu.py +0 -0
  259. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_hot_up_em.py +0 -0
  260. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_industry.py +0 -0
  261. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_industry_cninfo.py +0 -0
  262. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_industry_pe_cninfo.py +0 -0
  263. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_industry_sw.py +0 -0
  264. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_info.py +0 -0
  265. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_info_em.py +0 -0
  266. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_intraday_em.py +0 -0
  267. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_intraday_sina.py +0 -0
  268. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_ipo_summary_cninfo.py +0 -0
  269. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_new_cninfo.py +0 -0
  270. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_news_cx.py +0 -0
  271. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_profile_cninfo.py +0 -0
  272. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_rank_forecast.py +0 -0
  273. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_repurchase_em.py +0 -0
  274. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_share_changes_cninfo.py +0 -0
  275. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_share_hold.py +0 -0
  276. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_stop.py +0 -0
  277. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_summary.py +0 -0
  278. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_us_famous.py +0 -0
  279. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_us_js.py +0 -0
  280. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_us_pink.py +0 -0
  281. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_us_sina.py +0 -0
  282. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_weibo_nlp.py +0 -0
  283. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_xq.py +0 -0
  284. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_zh_a_sina.py +0 -0
  285. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_zh_a_special.py +0 -0
  286. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_zh_a_tick_tx.py +0 -0
  287. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_zh_ah_tx.py +0 -0
  288. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_zh_b_sina.py +0 -0
  289. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_zh_kcb_report.py +0 -0
  290. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock/stock_zh_kcb_sina.py +0 -0
  291. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/__init__.py +0 -0
  292. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/cons.py +0 -0
  293. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_a_below_net_asset_statistics.py +0 -0
  294. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_a_high_low.py +0 -0
  295. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_a_indicator.py +0 -0
  296. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_a_pe_and_pb.py +0 -0
  297. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_account_em.py +0 -0
  298. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_all_pb.py +0 -0
  299. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_analyst_em.py +0 -0
  300. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_board_industry_ths.py +0 -0
  301. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_buffett_index_lg.py +0 -0
  302. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_classify_sina.py +0 -0
  303. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_comment_em.py +0 -0
  304. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_concept_futu.py +0 -0
  305. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_congestion_lg.py +0 -0
  306. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_cyq_em.py +0 -0
  307. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_disclosure_cninfo.py +0 -0
  308. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_dxsyl_em.py +0 -0
  309. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_ebs_lg.py +0 -0
  310. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_fhps_em.py +0 -0
  311. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_fhps_ths.py +0 -0
  312. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_fund_flow.py +0 -0
  313. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_gddh_em.py +0 -0
  314. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_gdfx_em.py +0 -0
  315. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_gdhs.py +0 -0
  316. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_gdzjc_em.py +0 -0
  317. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_gpzy_em.py +0 -0
  318. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_gxl_lg.py +0 -0
  319. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_hist_tx.py +0 -0
  320. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_hk_valuation_baidu.py +0 -0
  321. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_hot_xq.py +0 -0
  322. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_hsgt_em.py +0 -0
  323. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_hsgt_exchange_rate.py +0 -0
  324. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_hsgt_min_em.py +0 -0
  325. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_info.py +0 -0
  326. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_inner_trade_xq.py +0 -0
  327. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_irm_cninfo.py +0 -0
  328. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_jgdy_em.py +0 -0
  329. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_lh_yybpm.py +0 -0
  330. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_lhb_em.py +0 -0
  331. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_lhb_sina.py +0 -0
  332. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_margin_em.py +0 -0
  333. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_margin_sse.py +0 -0
  334. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_margin_szse.py +0 -0
  335. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_market_legu.py +0 -0
  336. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_pankou_em.py +0 -0
  337. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_qsjy_em.py +0 -0
  338. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_report_em.py +0 -0
  339. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_research_report_em.py +0 -0
  340. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_sns_sseinfo.py +0 -0
  341. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_sy_em.py +0 -0
  342. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_technology_ths.py +0 -0
  343. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_tfp_em.py +0 -0
  344. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_three_report_em.py +0 -0
  345. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_ttm_lyr.py +0 -0
  346. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_value_em.py +0 -0
  347. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_wencai.py +0 -0
  348. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_yjbb_em.py +0 -0
  349. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_yjyg_cninfo.py +0 -0
  350. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_yjyg_em.py +0 -0
  351. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_yzxdr_em.py +0 -0
  352. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_zdhtmx_em.py +0 -0
  353. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_zf_pg.py +0 -0
  354. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_zh_valuation_baidu.py +0 -0
  355. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_zh_vote_baidu.py +0 -0
  356. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/stock_ztb_em.py +0 -0
  357. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_feature/ths.js +0 -0
  358. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/__init__.py +0 -0
  359. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_finance.py +0 -0
  360. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_finance_hk.py +0 -0
  361. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_finance_ths.py +0 -0
  362. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_hold.py +0 -0
  363. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_ipo_declare.py +0 -0
  364. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_kcb_detail_sse.py +0 -0
  365. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_kcb_sse.py +0 -0
  366. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_mda_ym.py +0 -0
  367. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_notice.py +0 -0
  368. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_profit_forecast_em.py +0 -0
  369. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_profit_forecast_hk_etnet.py +0 -0
  370. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_profit_forecast_ths.py +0 -0
  371. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_recommend.py +0 -0
  372. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_register_em.py +0 -0
  373. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_restricted_em.py +0 -0
  374. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_zygc.py +0 -0
  375. {akshare-1.15.97 → akshare-1.15.99}/akshare/stock_fundamental/stock_zyjs_ths.py +0 -0
  376. {akshare-1.15.97 → akshare-1.15.99}/akshare/tool/__init__.py +0 -0
  377. {akshare-1.15.97 → akshare-1.15.99}/akshare/tool/trade_date_hist.py +0 -0
  378. {akshare-1.15.97 → akshare-1.15.99}/akshare/utils/__init__.py +0 -0
  379. {akshare-1.15.97 → akshare-1.15.99}/akshare/utils/cons.py +0 -0
  380. {akshare-1.15.97 → akshare-1.15.99}/akshare/utils/context.py +0 -0
  381. {akshare-1.15.97 → akshare-1.15.99}/akshare/utils/demjson.py +0 -0
  382. {akshare-1.15.97 → akshare-1.15.99}/akshare/utils/func.py +0 -0
  383. {akshare-1.15.97 → akshare-1.15.99}/akshare/utils/token_process.py +0 -0
  384. {akshare-1.15.97 → akshare-1.15.99}/akshare/utils/tqdm.py +0 -0
  385. {akshare-1.15.97 → akshare-1.15.99}/akshare.egg-info/SOURCES.txt +0 -0
  386. {akshare-1.15.97 → akshare-1.15.99}/akshare.egg-info/dependency_links.txt +0 -0
  387. {akshare-1.15.97 → akshare-1.15.99}/akshare.egg-info/requires.txt +0 -0
  388. {akshare-1.15.97 → akshare-1.15.99}/akshare.egg-info/top_level.txt +0 -0
  389. {akshare-1.15.97 → akshare-1.15.99}/pyproject.toml +0 -0
  390. {akshare-1.15.97 → akshare-1.15.99}/setup.cfg +0 -0
  391. {akshare-1.15.97 → akshare-1.15.99}/setup.py +0 -0
  392. {akshare-1.15.97 → akshare-1.15.99}/tests/__init__.py +0 -0
  393. {akshare-1.15.97 → akshare-1.15.99}/tests/test_func.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: akshare
3
- Version: 1.15.97
3
+ Version: 1.15.99
4
4
  Summary: AKShare is an elegant and simple financial data interface library for Python, built for human beings!
5
5
  Home-page: https://github.com/akfamily/akshare
6
6
  Author: AKFamily
@@ -3007,9 +3007,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
3007
3007
  1.15.95 fix: fix stock_us_spot_em interface
3008
3008
  1.15.96 fix: fix bond_cov_comparison interface
3009
3009
  1.15.97 fix: fix stock_intraday_em interface
3010
+ 1.15.98 fix: fix stock_board_concept_name_em interface
3011
+ 1.15.99 fix: fix stock_esg_zd_sina interface
3010
3012
  """
3011
3013
 
3012
- __version__ = "1.15.97"
3014
+ __version__ = "1.15.99"
3013
3015
  __author__ = "AKFamily"
3014
3016
 
3015
3017
  import sys
@@ -478,7 +478,7 @@ if __name__ == "__main__":
478
478
 
479
479
  index_zh_a_hist_min_em_df = index_zh_a_hist_min_em(
480
480
  symbol="000001",
481
- period="15",
481
+ period="5",
482
482
  start_date="2025-02-14 09:30:00",
483
483
  end_date="2025-02-14 19:00:00",
484
484
  )
@@ -8,6 +8,7 @@ http://www.szse.cn/market/product/option/index.html
8
8
  http://www.cffex.com.cn/hs300gzqq/
9
9
  http://www.cffex.com.cn/zz1000gzqq/
10
10
  """
11
+
11
12
  from io import BytesIO
12
13
 
13
14
  import pandas as pd
@@ -69,7 +70,7 @@ def option_finance_sse_underlying(symbol: str = "华夏科创50ETF期权") -> pd
69
70
 
70
71
 
71
72
  def option_finance_board(
72
- symbol: str = "嘉实沪深300ETF期权", end_month: str = "2306"
73
+ symbol: str = "嘉实沪深300ETF期权", end_month: str = "2306"
73
74
  ) -> pd.DataFrame:
74
75
  """
75
76
  期权当前交易日的行情数据
@@ -79,7 +80,8 @@ def option_finance_board(
79
80
  http://www.szse.cn/market/product/option/index.html
80
81
  http://www.cffex.com.cn/hs300gzqq/
81
82
  http://www.cffex.com.cn/zz1000gzqq/
82
- :param symbol: choice of {"华夏上证50ETF期权", "华泰柏瑞沪深300ETF期权", "南方中证500ETF期权", "华夏科创50ETF期权", "易方达科创50ETF期权", "嘉实沪深300ETF期权", "沪深300股指期权", "中证1000股指期权", "上证50股指期权"}
83
+ :param symbol: choice of {"华夏上证50ETF期权", "华泰柏瑞沪深300ETF期权", "南方中证500ETF期权",
84
+ "华夏科创50ETF期权", "易方达科创50ETF期权", "嘉实沪深300ETF期权", "沪深300股指期权", "中证1000股指期权", "上证50股指期权"}
83
85
  :type symbol: str
84
86
  :param end_month: 2003; 2020 年 3 月到期的期权
85
87
  :type end_month: str
@@ -100,7 +102,15 @@ def option_finance_board(
100
102
  raw_data.columns = ["合约交易代码", "当前价", "涨跌幅", "前结价", "行权价"]
101
103
  raw_data["数量"] = [data_json["total"]] * data_json["total"]
102
104
  raw_data.reset_index(inplace=True)
103
- raw_data.columns = ["日期", "合约交易代码", "当前价", "涨跌幅", "前结价", "行权价", "数量"]
105
+ raw_data.columns = [
106
+ "日期",
107
+ "合约交易代码",
108
+ "当前价",
109
+ "涨跌幅",
110
+ "前结价",
111
+ "行权价",
112
+ "数量",
113
+ ]
104
114
  return raw_data
105
115
  elif symbol == "华泰柏瑞沪深300ETF期权":
106
116
  r = requests.get(
@@ -115,7 +125,15 @@ def option_finance_board(
115
125
  raw_data.columns = ["合约交易代码", "当前价", "涨跌幅", "前结价", "行权价"]
116
126
  raw_data["数量"] = [data_json["total"]] * data_json["total"]
117
127
  raw_data.reset_index(inplace=True)
118
- raw_data.columns = ["日期", "合约交易代码", "当前价", "涨跌幅", "前结价", "行权价", "数量"]
128
+ raw_data.columns = [
129
+ "日期",
130
+ "合约交易代码",
131
+ "当前价",
132
+ "涨跌幅",
133
+ "前结价",
134
+ "行权价",
135
+ "数量",
136
+ ]
119
137
  return raw_data
120
138
  elif symbol == "南方中证500ETF期权":
121
139
  r = requests.get(
@@ -130,7 +148,15 @@ def option_finance_board(
130
148
  raw_data.columns = ["合约交易代码", "当前价", "涨跌幅", "前结价", "行权价"]
131
149
  raw_data["数量"] = [data_json["total"]] * data_json["total"]
132
150
  raw_data.reset_index(inplace=True)
133
- raw_data.columns = ["日期", "合约交易代码", "当前价", "涨跌幅", "前结价", "行权价", "数量"]
151
+ raw_data.columns = [
152
+ "日期",
153
+ "合约交易代码",
154
+ "当前价",
155
+ "涨跌幅",
156
+ "前结价",
157
+ "行权价",
158
+ "数量",
159
+ ]
134
160
  return raw_data
135
161
  elif symbol == "华夏科创50ETF期权":
136
162
  r = requests.get(
@@ -145,7 +171,15 @@ def option_finance_board(
145
171
  raw_data.columns = ["合约交易代码", "当前价", "涨跌幅", "前结价", "行权价"]
146
172
  raw_data["数量"] = [data_json["total"]] * data_json["total"]
147
173
  raw_data.reset_index(inplace=True)
148
- raw_data.columns = ["日期", "合约交易代码", "当前价", "涨跌幅", "前结价", "行权价", "数量"]
174
+ raw_data.columns = [
175
+ "日期",
176
+ "合约交易代码",
177
+ "当前价",
178
+ "涨跌幅",
179
+ "前结价",
180
+ "行权价",
181
+ "数量",
182
+ ]
149
183
  return raw_data
150
184
  elif symbol == "易方达科创50ETF期权":
151
185
  r = requests.get(
@@ -160,7 +194,15 @@ def option_finance_board(
160
194
  raw_data.columns = ["合约交易代码", "当前价", "涨跌幅", "前结价", "行权价"]
161
195
  raw_data["数量"] = [data_json["total"]] * data_json["total"]
162
196
  raw_data.reset_index(inplace=True)
163
- raw_data.columns = ["日期", "合约交易代码", "当前价", "涨跌幅", "前结价", "行权价", "数量"]
197
+ raw_data.columns = [
198
+ "日期",
199
+ "合约交易代码",
200
+ "当前价",
201
+ "涨跌幅",
202
+ "前结价",
203
+ "行权价",
204
+ "数量",
205
+ ]
164
206
  return raw_data
165
207
  elif symbol == "嘉实沪深300ETF期权":
166
208
  url = "http://www.szse.cn/api/report/ShowReport/data"
@@ -206,7 +248,7 @@ def option_finance_board(
206
248
  return big_df
207
249
  elif symbol == "沪深300股指期权":
208
250
  headers = {
209
- 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36'
251
+ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36"
210
252
  }
211
253
  r = requests.get(CFFEX_OPTION_URL_300, headers=headers)
212
254
  raw_df = pd.read_table(BytesIO(r.content), sep=",")
@@ -224,7 +266,7 @@ def option_finance_board(
224
266
  return raw_df
225
267
  elif symbol == "中证1000股指期权":
226
268
  headers = {
227
- 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36'
269
+ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36"
228
270
  }
229
271
  url = "http://www.cffex.com.cn/quote_MO.txt"
230
272
  r = requests.get(url, headers=headers)
@@ -243,7 +285,7 @@ def option_finance_board(
243
285
  return raw_df
244
286
  elif symbol == "上证50股指期权":
245
287
  headers = {
246
- 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36'
288
+ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36"
247
289
  }
248
290
  url = "http://www.cffex.com.cn/quote_HO.txt"
249
291
  r = requests.get(url, headers=headers)
@@ -298,7 +340,9 @@ if __name__ == "__main__":
298
340
  )
299
341
  print(option_finance_board_df)
300
342
 
301
- option_finance_board_df = option_finance_board(symbol="沪深300股指期权", end_month="2306")
343
+ option_finance_board_df = option_finance_board(
344
+ symbol="沪深300股指期权", end_month="2306"
345
+ )
302
346
  print(option_finance_board_df)
303
347
 
304
348
  option_finance_board_df = option_finance_board(
@@ -306,5 +350,7 @@ if __name__ == "__main__":
306
350
  )
307
351
  print(option_finance_board_df)
308
352
 
309
- option_finance_board_df = option_finance_board(symbol="上证50股指期权", end_month="2306")
353
+ option_finance_board_df = option_finance_board(
354
+ symbol="上证50股指期权", end_month="2306"
355
+ )
310
356
  print(option_finance_board_df)
@@ -1,15 +1,21 @@
1
1
  #!/usr/bin/env python
2
2
  # -*- coding:utf-8 -*-
3
3
  """
4
- Date: 2023/6/29 17:13
4
+ Date: 2025/2/17 14:10
5
5
  Desc: 东方财富-沪深板块-概念板块
6
6
  https://quote.eastmoney.com/center/boardlist.html#concept_board
7
7
  """
8
8
 
9
- import requests
9
+ import math
10
+ from functools import lru_cache
11
+
10
12
  import pandas as pd
13
+ import requests
11
14
 
15
+ from akshare.utils.tqdm import get_tqdm
12
16
 
17
+
18
+ @lru_cache()
13
19
  def stock_board_concept_name_em() -> pd.DataFrame:
14
20
  """
15
21
  东方财富网-行情中心-沪深京板块-概念板块-名称
@@ -20,20 +26,33 @@ def stock_board_concept_name_em() -> pd.DataFrame:
20
26
  url = "https://79.push2.eastmoney.com/api/qt/clist/get"
21
27
  params = {
22
28
  "pn": "1",
23
- "pz": "2000",
29
+ "pz": "200",
24
30
  "po": "1",
25
31
  "np": "1",
26
32
  "ut": "bd1d9ddb04089700cf9c27f6f7426281",
27
33
  "fltt": "2",
28
34
  "invt": "2",
29
- "fid": "f3",
35
+ "fid": "f12",
30
36
  "fs": "m:90 t:3 f:!50",
31
37
  "fields": "f2,f3,f4,f8,f12,f14,f15,f16,f17,f18,f20,f21,f24,f25,f22,f33,f11,f62,f128,f124,f107,f104,f105,f136",
32
38
  "_": "1626075887768",
33
39
  }
34
40
  r = requests.get(url, params=params)
35
41
  data_json = r.json()
36
- temp_df = pd.DataFrame(data_json["data"]["diff"])
42
+ total_page = math.ceil(data_json["data"]["total"] / 200)
43
+ temp_list = []
44
+ tqdm = get_tqdm()
45
+ for page in tqdm(range(1, total_page + 1), leave=False):
46
+ params.update(
47
+ {
48
+ "pn": page,
49
+ }
50
+ )
51
+ r = requests.get(url, params=params, timeout=15)
52
+ data_json = r.json()
53
+ inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
54
+ temp_list.append(inner_temp_df)
55
+ temp_df = pd.concat(temp_list, ignore_index=True)
37
56
  temp_df.reset_index(inplace=True)
38
57
  temp_df["index"] = range(1, len(temp_df) + 1)
39
58
  temp_df.columns = [
@@ -311,7 +330,7 @@ def stock_board_concept_cons_em(symbol: str = "融资融券") -> pd.DataFrame:
311
330
  url = "https://29.push2.eastmoney.com/api/qt/clist/get"
312
331
  params = {
313
332
  "pn": "1",
314
- "pz": "5000",
333
+ "pz": "200",
315
334
  "po": "1",
316
335
  "np": "1",
317
336
  "ut": "bd1d9ddb04089700cf9c27f6f7426281",
@@ -325,7 +344,20 @@ def stock_board_concept_cons_em(symbol: str = "融资融券") -> pd.DataFrame:
325
344
  }
326
345
  r = requests.get(url, params=params)
327
346
  data_json = r.json()
328
- temp_df = pd.DataFrame(data_json["data"]["diff"])
347
+ total_page = math.ceil(data_json["data"]["total"] / 200)
348
+ temp_list = []
349
+ tqdm = get_tqdm()
350
+ for page in tqdm(range(1, total_page + 1), leave=False):
351
+ params.update(
352
+ {
353
+ "pn": page,
354
+ }
355
+ )
356
+ r = requests.get(url, params=params, timeout=15)
357
+ data_json = r.json()
358
+ inner_temp_df = pd.DataFrame(data_json["data"]["diff"])
359
+ temp_list.append(inner_temp_df)
360
+ temp_df = pd.concat(temp_list, ignore_index=True)
329
361
  temp_df.reset_index(inplace=True)
330
362
  temp_df["index"] = range(1, len(temp_df) + 1)
331
363
  temp_df.columns = [
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env python
2
2
  # -*- coding:utf-8 -*-
3
3
  """
4
- Date: 2024/3/25 12:30
4
+ Date: 2025/2/17 14:30
5
5
  Desc: 东方财富网-数据中心-资金流向
6
6
  https://data.eastmoney.com/zjlx/detail.html
7
7
  """
@@ -654,7 +654,7 @@ def _get_stock_sector_fund_flow_summary_code() -> dict:
654
654
  "pn": "1",
655
655
  "pz": "5000",
656
656
  "po": "1",
657
- "np": "1",
657
+ "np": "2",
658
658
  "ut": "b2884a393a59ad64002292a3e90d46a5",
659
659
  "fltt": "2",
660
660
  "invt": "2",
@@ -667,7 +667,7 @@ def _get_stock_sector_fund_flow_summary_code() -> dict:
667
667
  }
668
668
  r = requests.get(url, params=params, headers=headers)
669
669
  data_json = r.json()
670
- temp_df = pd.DataFrame(data_json["data"]["diff"])
670
+ temp_df = pd.DataFrame(data_json["data"]["diff"]).T
671
671
  name_code_map = dict(zip(temp_df["f14"], temp_df["f12"]))
672
672
  return name_code_map
673
673
 
@@ -1061,7 +1061,7 @@ def _get_stock_concept_fund_flow_summary_code() -> dict:
1061
1061
  "pn": "1",
1062
1062
  "pz": "5000",
1063
1063
  "po": "1",
1064
- "np": "1",
1064
+ "np": "2",
1065
1065
  "fields": "f12,f13,f14,f62",
1066
1066
  "fid": "f62",
1067
1067
  "fs": "m:90+t:3",
@@ -1070,7 +1070,7 @@ def _get_stock_concept_fund_flow_summary_code() -> dict:
1070
1070
  }
1071
1071
  r = requests.get(url, params=params, headers=headers)
1072
1072
  data_json = r.json()
1073
- temp_df = pd.DataFrame(data_json["data"]["diff"])
1073
+ temp_df = pd.DataFrame(data_json["data"]["diff"]).T
1074
1074
  name_code_map = dict(zip(temp_df["f14"], temp_df["f12"]))
1075
1075
  return name_code_map
1076
1076
 
@@ -1332,7 +1332,7 @@ if __name__ == "__main__":
1332
1332
  stock_sector_fund_flow_hist_df = stock_sector_fund_flow_hist(symbol="电源设备")
1333
1333
  print(stock_sector_fund_flow_hist_df)
1334
1334
 
1335
- stock_concept_fund_flow_hist_df = stock_concept_fund_flow_hist(symbol="锂电池")
1335
+ stock_concept_fund_flow_hist_df = stock_concept_fund_flow_hist(symbol="电源设备")
1336
1336
  print(stock_concept_fund_flow_hist_df)
1337
1337
 
1338
1338
  stock_main_fund_flow_df = stock_main_fund_flow(symbol="全部股票")
@@ -7,10 +7,10 @@ https://finance.sina.com.cn/esg/
7
7
  """
8
8
 
9
9
  import math
10
+ from akshare.utils.tqdm import get_tqdm
10
11
 
11
12
  import pandas as pd
12
13
  import requests
13
- from tqdm import tqdm
14
14
 
15
15
 
16
16
  def stock_esg_msci_sina() -> pd.DataFrame:
@@ -25,6 +25,7 @@ def stock_esg_msci_sina() -> pd.DataFrame:
25
25
  data_json = r.json()
26
26
  page_num = math.ceil(int(data_json["result"]["data"]["total"]) / 100)
27
27
  big_df = pd.DataFrame()
28
+ tqdm = get_tqdm()
28
29
  for page in tqdm(range(1, page_num + 1), leave=False):
29
30
  headers = {
30
31
  "Referer": "https://finance.sina.com.cn/",
@@ -175,6 +176,7 @@ def stock_esg_rate_sina() -> pd.DataFrame:
175
176
  data_json = r.json()
176
177
  page_num = math.ceil(int(data_json["result"]["data"]["info"]["total"]) / 200)
177
178
  big_df = pd.DataFrame()
179
+ tqdm = get_tqdm()
178
180
  for page in tqdm(range(1, page_num + 1), leave=False):
179
181
  url = f"https://global.finance.sina.com.cn/api/openapi.php/EsgService.getEsgStocks?page={page}&num=200"
180
182
  r = requests.get(url)
@@ -223,10 +225,20 @@ def stock_esg_zd_sina() -> pd.DataFrame:
223
225
  :return: 秩鼎
224
226
  :rtype: pandas.DataFrame
225
227
  """
226
- url = "https://global.finance.sina.com.cn/api/openapi.php/EsgService.getZdEsgStocks?p=1&num=20000"
227
- r = requests.get(url)
228
+ url = "https://global.finance.sina.com.cn/api/openapi.php/EsgService.getZdEsgStocks"
229
+ params = {"p": "1", "num": "100"}
230
+ r = requests.get(url, params=params)
228
231
  data_json = r.json()
229
- big_df = pd.DataFrame(data_json["result"]["data"]["data"])
232
+ tqdm = get_tqdm()
233
+ total_page = math.ceil(int(data_json["result"]["data"]["total"]) / 100)
234
+ temp_list = []
235
+ for page in tqdm(range(1, total_page + 1), leave=False):
236
+ params = {"p": str(page), "num": "100"}
237
+ r = requests.get(url, params=params)
238
+ data_json = r.json()
239
+ temp_df = pd.DataFrame(data_json["result"]["data"]["data"])
240
+ temp_list.append(temp_df)
241
+ big_df = pd.concat(temp_list, ignore_index=True)
230
242
  big_df.rename(
231
243
  columns={
232
244
  "ticker": "股票代码",
@@ -265,6 +277,7 @@ def stock_esg_hz_sina() -> pd.DataFrame:
265
277
  data_json = r.json()
266
278
  total_page = math.ceil(int(data_json["result"]["data"]["total"]) / 100)
267
279
  big_df = pd.DataFrame()
280
+ tqdm = get_tqdm()
268
281
  for page in tqdm(range(1, total_page + 1), leave=False):
269
282
  params = {"p": str(page), "num": "100"}
270
283
  r = requests.get(url, params=params)