akshare 1.15.51__tar.gz → 1.15.53__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 (395) hide show
  1. {akshare-1.15.51 → akshare-1.15.53}/PKG-INFO +1 -1
  2. {akshare-1.15.51 → akshare-1.15.53}/akshare/__init__.py +3 -14
  3. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/cons.py +0 -24
  4. akshare-1.15.53/akshare/futures/futures_inventory_99.py +86 -0
  5. akshare-1.15.53/akshare/index/index_stock_zh_csindex.py +115 -0
  6. {akshare-1.15.51 → akshare-1.15.53}/akshare.egg-info/PKG-INFO +1 -1
  7. {akshare-1.15.51 → akshare-1.15.53}/akshare.egg-info/SOURCES.txt +0 -2
  8. akshare-1.15.51/akshare/futures/futures_inventory_99.py +0 -297
  9. akshare-1.15.51/akshare/futures/inventory_data.py +0 -100
  10. akshare-1.15.51/akshare/index/index_fear_greed_funddb.py +0 -78
  11. akshare-1.15.51/akshare/index/index_stock_zh_csindex.py +0 -481
  12. {akshare-1.15.51 → akshare-1.15.53}/LICENSE +0 -0
  13. {akshare-1.15.51 → akshare-1.15.53}/README.md +0 -0
  14. {akshare-1.15.51 → akshare-1.15.53}/akshare/air/__init__.py +0 -0
  15. {akshare-1.15.51 → akshare-1.15.53}/akshare/air/air_hebei.py +0 -0
  16. {akshare-1.15.51 → akshare-1.15.53}/akshare/air/air_zhenqi.py +0 -0
  17. {akshare-1.15.51 → akshare-1.15.53}/akshare/air/cons.py +0 -0
  18. {akshare-1.15.51 → akshare-1.15.53}/akshare/air/crypto.js +0 -0
  19. {akshare-1.15.51 → akshare-1.15.53}/akshare/air/outcrypto.js +0 -0
  20. {akshare-1.15.51 → akshare-1.15.53}/akshare/air/sunrise_tad.py +0 -0
  21. {akshare-1.15.51 → akshare-1.15.53}/akshare/article/__init__.py +0 -0
  22. {akshare-1.15.51 → akshare-1.15.53}/akshare/article/cons.py +0 -0
  23. {akshare-1.15.51 → akshare-1.15.53}/akshare/article/epu_index.py +0 -0
  24. {akshare-1.15.51 → akshare-1.15.53}/akshare/article/ff_factor.py +0 -0
  25. {akshare-1.15.51 → akshare-1.15.53}/akshare/article/fred_md.py +0 -0
  26. {akshare-1.15.51 → akshare-1.15.53}/akshare/article/risk_rv.py +0 -0
  27. {akshare-1.15.51 → akshare-1.15.53}/akshare/bank/__init__.py +0 -0
  28. {akshare-1.15.51 → akshare-1.15.53}/akshare/bank/bank_cbirc_2020.py +0 -0
  29. {akshare-1.15.51 → akshare-1.15.53}/akshare/bank/cons.py +0 -0
  30. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/__init__.py +0 -0
  31. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_cb_sina.py +0 -0
  32. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_cb_ths.py +0 -0
  33. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_cbond.py +0 -0
  34. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_china.py +0 -0
  35. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_china_money.py +0 -0
  36. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_convert.py +0 -0
  37. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_em.py +0 -0
  38. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_info_cm.py +0 -0
  39. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_issue_cninfo.py +0 -0
  40. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_nafmii.py +0 -0
  41. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_summary.py +0 -0
  42. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_zh_cov.py +0 -0
  43. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/bond_zh_sina.py +0 -0
  44. {akshare-1.15.51 → akshare-1.15.53}/akshare/bond/cons.py +0 -0
  45. {akshare-1.15.51 → akshare-1.15.53}/akshare/cal/__init__.py +0 -0
  46. {akshare-1.15.51 → akshare-1.15.53}/akshare/cal/rv.py +0 -0
  47. {akshare-1.15.51 → akshare-1.15.53}/akshare/cost/__init__.py +0 -0
  48. {akshare-1.15.51 → akshare-1.15.53}/akshare/cost/cost_living.py +0 -0
  49. {akshare-1.15.51 → akshare-1.15.53}/akshare/crypto/__init__.py +0 -0
  50. {akshare-1.15.51 → akshare-1.15.53}/akshare/crypto/crypto_bitcoin_cme.py +0 -0
  51. {akshare-1.15.51 → akshare-1.15.53}/akshare/crypto/crypto_hold.py +0 -0
  52. {akshare-1.15.51 → akshare-1.15.53}/akshare/currency/__init__.py +0 -0
  53. {akshare-1.15.51 → akshare-1.15.53}/akshare/currency/currency.py +0 -0
  54. {akshare-1.15.51 → akshare-1.15.53}/akshare/currency/currency_china_bank_sina.py +0 -0
  55. {akshare-1.15.51 → akshare-1.15.53}/akshare/currency/currency_safe.py +0 -0
  56. {akshare-1.15.51 → akshare-1.15.53}/akshare/data/__init__.py +0 -0
  57. {akshare-1.15.51 → akshare-1.15.53}/akshare/data/cninfo.js +0 -0
  58. {akshare-1.15.51 → akshare-1.15.53}/akshare/data/crypto_info.zip +0 -0
  59. {akshare-1.15.51 → akshare-1.15.53}/akshare/data/ths.js +0 -0
  60. {akshare-1.15.51 → akshare-1.15.53}/akshare/datasets.py +0 -0
  61. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/__init__.py +0 -0
  62. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/cons.py +0 -0
  63. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_australia.py +0 -0
  64. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_bank.py +0 -0
  65. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_canada.py +0 -0
  66. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_china.py +0 -0
  67. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_china_hk.py +0 -0
  68. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_china_nbs.py +0 -0
  69. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_constitute.py +0 -0
  70. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_euro.py +0 -0
  71. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_finance_ths.py +0 -0
  72. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_germany.py +0 -0
  73. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_info_ws.py +0 -0
  74. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_japan.py +0 -0
  75. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_other.py +0 -0
  76. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_swiss.py +0 -0
  77. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_uk.py +0 -0
  78. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/macro_usa.py +0 -0
  79. {akshare-1.15.51 → akshare-1.15.53}/akshare/economic/marco_cnbs.py +0 -0
  80. {akshare-1.15.51 → akshare-1.15.53}/akshare/energy/__init__.py +0 -0
  81. {akshare-1.15.51 → akshare-1.15.53}/akshare/energy/energy_carbon.py +0 -0
  82. {akshare-1.15.51 → akshare-1.15.53}/akshare/energy/energy_oil_em.py +0 -0
  83. {akshare-1.15.51 → akshare-1.15.53}/akshare/event/__init__.py +0 -0
  84. {akshare-1.15.51 → akshare-1.15.53}/akshare/event/cons.py +0 -0
  85. {akshare-1.15.51 → akshare-1.15.53}/akshare/event/migration.py +0 -0
  86. {akshare-1.15.51 → akshare-1.15.53}/akshare/exceptions.py +0 -0
  87. {akshare-1.15.51 → akshare-1.15.53}/akshare/file_fold/__init__.py +0 -0
  88. {akshare-1.15.51 → akshare-1.15.53}/akshare/file_fold/calendar.json +0 -0
  89. {akshare-1.15.51 → akshare-1.15.53}/akshare/fortune/__init__.py +0 -0
  90. {akshare-1.15.51 → akshare-1.15.53}/akshare/fortune/fortune_500.py +0 -0
  91. {akshare-1.15.51 → akshare-1.15.53}/akshare/fortune/fortune_bloomberg.py +0 -0
  92. {akshare-1.15.51 → akshare-1.15.53}/akshare/fortune/fortune_forbes_500.py +0 -0
  93. {akshare-1.15.51 → akshare-1.15.53}/akshare/fortune/fortune_hurun.py +0 -0
  94. {akshare-1.15.51 → akshare-1.15.53}/akshare/fortune/fortune_xincaifu_500.py +0 -0
  95. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/__init__.py +0 -0
  96. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_amac.py +0 -0
  97. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_announcement.py +0 -0
  98. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_aum_em.py +0 -0
  99. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_em.py +0 -0
  100. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_etf_em.py +0 -0
  101. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_etf_sina.py +0 -0
  102. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_etf_ths.py +0 -0
  103. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_fhsp_em.py +0 -0
  104. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_init_em.py +0 -0
  105. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_lof_em.py +0 -0
  106. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_manager.py +0 -0
  107. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_portfolio_em.py +0 -0
  108. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_position_lg.py +0 -0
  109. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_rank_em.py +0 -0
  110. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_rating.py +0 -0
  111. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_report_cninfo.py +0 -0
  112. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_scale_em.py +0 -0
  113. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_scale_sina.py +0 -0
  114. {akshare-1.15.51 → akshare-1.15.53}/akshare/fund/fund_xq.py +0 -0
  115. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/__init__.py +0 -0
  116. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/cot.py +0 -0
  117. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_basis.py +0 -0
  118. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_comex_em.py +0 -0
  119. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_comm_ctp.py +0 -0
  120. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_comm_qihuo.py +0 -0
  121. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_contract_detail.py +0 -0
  122. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_daily_bar.py +0 -0
  123. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_foreign.py +0 -0
  124. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_hf_em.py +0 -0
  125. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_hq_sina.py +0 -0
  126. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_index_ccidx.py +0 -0
  127. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_inventory_em.py +0 -0
  128. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_news_baidu.py +0 -0
  129. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_news_shmet.py +0 -0
  130. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_roll_yield.py +0 -0
  131. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_rule.py +0 -0
  132. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_settlement_price_sgx.py +0 -0
  133. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_spot_stock_em.py +0 -0
  134. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_stock_js.py +0 -0
  135. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_to_spot.py +0 -0
  136. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_warehouse_receipt.py +0 -0
  137. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/futures_zh_sina.py +0 -0
  138. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/receipt.py +0 -0
  139. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/requests_fun.py +0 -0
  140. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures/symbol_var.py +0 -0
  141. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/__init__.py +0 -0
  142. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/cons.py +0 -0
  143. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/futures_contract_info_cffex.py +0 -0
  144. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/futures_contract_info_czce.py +0 -0
  145. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/futures_contract_info_dce.py +0 -0
  146. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/futures_contract_info_gfex.py +0 -0
  147. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/futures_contract_info_ine.py +0 -0
  148. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/futures_contract_info_shfe.py +0 -0
  149. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/futures_cot_sina.py +0 -0
  150. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/futures_hog.py +0 -0
  151. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/futures_index_sina.py +0 -0
  152. {akshare-1.15.51 → akshare-1.15.53}/akshare/futures_derivative/futures_spot_sys.py +0 -0
  153. {akshare-1.15.51 → akshare-1.15.53}/akshare/fx/__init__.py +0 -0
  154. {akshare-1.15.51 → akshare-1.15.53}/akshare/fx/cons.py +0 -0
  155. {akshare-1.15.51 → akshare-1.15.53}/akshare/fx/currency_investing.py +0 -0
  156. {akshare-1.15.51 → akshare-1.15.53}/akshare/fx/fx_quote.py +0 -0
  157. {akshare-1.15.51 → akshare-1.15.53}/akshare/fx/fx_quote_baidu.py +0 -0
  158. {akshare-1.15.51 → akshare-1.15.53}/akshare/hf/__init__.py +0 -0
  159. {akshare-1.15.51 → akshare-1.15.53}/akshare/hf/hf_sp500.py +0 -0
  160. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/__init__.py +0 -0
  161. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/cons.py +0 -0
  162. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_cflp.py +0 -0
  163. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_cni.py +0 -0
  164. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_cons.py +0 -0
  165. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_cx.py +0 -0
  166. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_drewry.py +0 -0
  167. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_eri.py +0 -0
  168. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_hog.py +0 -0
  169. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_kq_fz.py +0 -0
  170. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_kq_ss.py +0 -0
  171. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_option_qvix.py +0 -0
  172. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_research_fund_sw.py +0 -0
  173. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_research_sw.py +0 -0
  174. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_spot.py +0 -0
  175. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_stock_hk.py +0 -0
  176. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_stock_us_sina.py +0 -0
  177. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_stock_zh.py +0 -0
  178. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_sugar.py +0 -0
  179. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_sw.py +0 -0
  180. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_yw.py +0 -0
  181. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_zh_a_scope.py +0 -0
  182. {akshare-1.15.51 → akshare-1.15.53}/akshare/index/index_zh_em.py +0 -0
  183. {akshare-1.15.51 → akshare-1.15.53}/akshare/interest_rate/__init__.py +0 -0
  184. {akshare-1.15.51 → akshare-1.15.53}/akshare/interest_rate/interbank_rate_em.py +0 -0
  185. {akshare-1.15.51 → akshare-1.15.53}/akshare/movie/__init__.py +0 -0
  186. {akshare-1.15.51 → akshare-1.15.53}/akshare/movie/artist_yien.py +0 -0
  187. {akshare-1.15.51 → akshare-1.15.53}/akshare/movie/jm.js +0 -0
  188. {akshare-1.15.51 → akshare-1.15.53}/akshare/movie/movie_yien.py +0 -0
  189. {akshare-1.15.51 → akshare-1.15.53}/akshare/movie/video_yien.py +0 -0
  190. {akshare-1.15.51 → akshare-1.15.53}/akshare/news/__init__.py +0 -0
  191. {akshare-1.15.51 → akshare-1.15.53}/akshare/news/news_baidu.py +0 -0
  192. {akshare-1.15.51 → akshare-1.15.53}/akshare/news/news_cctv.py +0 -0
  193. {akshare-1.15.51 → akshare-1.15.53}/akshare/news/news_stock.py +0 -0
  194. {akshare-1.15.51 → akshare-1.15.53}/akshare/nlp/__init__.py +0 -0
  195. {akshare-1.15.51 → akshare-1.15.53}/akshare/nlp/nlp_interface.py +0 -0
  196. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/__init__.py +0 -0
  197. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/cons.py +0 -0
  198. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_comm_qihuo.py +0 -0
  199. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_commodity.py +0 -0
  200. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_commodity_sina.py +0 -0
  201. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_czce.py +0 -0
  202. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_daily_stats_sse_szse.py +0 -0
  203. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_em.py +0 -0
  204. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_finance.py +0 -0
  205. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_finance_sina.py +0 -0
  206. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_lhb_em.py +0 -0
  207. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_premium_analysis_em.py +0 -0
  208. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_risk_analysis_em.py +0 -0
  209. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_risk_indicator_sse.py +0 -0
  210. {akshare-1.15.51 → akshare-1.15.53}/akshare/option/option_value_analysis_em.py +0 -0
  211. {akshare-1.15.51 → akshare-1.15.53}/akshare/other/__init__.py +0 -0
  212. {akshare-1.15.51 → akshare-1.15.53}/akshare/other/other_car_cpca.py +0 -0
  213. {akshare-1.15.51 → akshare-1.15.53}/akshare/other/other_car_gasgoo.py +0 -0
  214. {akshare-1.15.51 → akshare-1.15.53}/akshare/pro/__init__.py +0 -0
  215. {akshare-1.15.51 → akshare-1.15.53}/akshare/pro/client.py +0 -0
  216. {akshare-1.15.51 → akshare-1.15.53}/akshare/pro/cons.py +0 -0
  217. {akshare-1.15.51 → akshare-1.15.53}/akshare/pro/data_pro.py +0 -0
  218. {akshare-1.15.51 → akshare-1.15.53}/akshare/qdii/__init__.py +0 -0
  219. {akshare-1.15.51 → akshare-1.15.53}/akshare/qdii/qdii_jsl.py +0 -0
  220. {akshare-1.15.51 → akshare-1.15.53}/akshare/qhkc/__init__.py +0 -0
  221. {akshare-1.15.51 → akshare-1.15.53}/akshare/qhkc/qhkc_api.py +0 -0
  222. {akshare-1.15.51 → akshare-1.15.53}/akshare/qhkc_web/__init__.py +0 -0
  223. {akshare-1.15.51 → akshare-1.15.53}/akshare/qhkc_web/qhkc_fund.py +0 -0
  224. {akshare-1.15.51 → akshare-1.15.53}/akshare/qhkc_web/qhkc_index.py +0 -0
  225. {akshare-1.15.51 → akshare-1.15.53}/akshare/qhkc_web/qhkc_tool.py +0 -0
  226. {akshare-1.15.51 → akshare-1.15.53}/akshare/rate/__init__.py +0 -0
  227. {akshare-1.15.51 → akshare-1.15.53}/akshare/rate/repo_rate.py +0 -0
  228. {akshare-1.15.51 → akshare-1.15.53}/akshare/reits/__init__.py +0 -0
  229. {akshare-1.15.51 → akshare-1.15.53}/akshare/reits/reits_basic.py +0 -0
  230. {akshare-1.15.51 → akshare-1.15.53}/akshare/request.py +0 -0
  231. {akshare-1.15.51 → akshare-1.15.53}/akshare/sport/__init__.py +0 -0
  232. {akshare-1.15.51 → akshare-1.15.53}/akshare/sport/sport_olympic.py +0 -0
  233. {akshare-1.15.51 → akshare-1.15.53}/akshare/spot/__init__.py +0 -0
  234. {akshare-1.15.51 → akshare-1.15.53}/akshare/spot/spot_hog_soozhu.py +0 -0
  235. {akshare-1.15.51 → akshare-1.15.53}/akshare/spot/spot_price_qh.py +0 -0
  236. {akshare-1.15.51 → akshare-1.15.53}/akshare/spot/spot_sge.py +0 -0
  237. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/__init__.py +0 -0
  238. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/cons.py +0 -0
  239. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_allotment_cninfo.py +0 -0
  240. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_ask_bid_em.py +0 -0
  241. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_board_concept_em.py +0 -0
  242. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_board_industry_em.py +0 -0
  243. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_cg_equity_mortgage.py +0 -0
  244. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_cg_guarantee.py +0 -0
  245. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_cg_lawsuit.py +0 -0
  246. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_dividend_cninfo.py +0 -0
  247. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_dzjy_em.py +0 -0
  248. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_fund_em.py +0 -0
  249. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_fund_hold.py +0 -0
  250. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_gsrl_em.py +0 -0
  251. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_hk_famous.py +0 -0
  252. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_hk_fhpx_ths.py +0 -0
  253. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_hk_hot_rank_em.py +0 -0
  254. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_hk_sina.py +0 -0
  255. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_hold_control_cninfo.py +0 -0
  256. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_hold_control_em.py +0 -0
  257. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_hold_num_cninfo.py +0 -0
  258. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_hot_rank_em.py +0 -0
  259. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_hot_search_baidu.py +0 -0
  260. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_hot_up_em.py +0 -0
  261. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_industry.py +0 -0
  262. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_industry_cninfo.py +0 -0
  263. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_industry_pe_cninfo.py +0 -0
  264. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_industry_sw.py +0 -0
  265. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_info.py +0 -0
  266. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_info_em.py +0 -0
  267. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_intraday_em.py +0 -0
  268. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_intraday_sina.py +0 -0
  269. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_ipo_summary_cninfo.py +0 -0
  270. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_new_cninfo.py +0 -0
  271. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_news_cx.py +0 -0
  272. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_profile_cninfo.py +0 -0
  273. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_rank_forecast.py +0 -0
  274. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_repurchase_em.py +0 -0
  275. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_share_changes_cninfo.py +0 -0
  276. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_share_hold.py +0 -0
  277. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_stop.py +0 -0
  278. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_summary.py +0 -0
  279. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_us_famous.py +0 -0
  280. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_us_js.py +0 -0
  281. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_us_pink.py +0 -0
  282. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_us_sina.py +0 -0
  283. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_weibo_nlp.py +0 -0
  284. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_xq.py +0 -0
  285. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_zh_a_sina.py +0 -0
  286. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_zh_a_special.py +0 -0
  287. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_zh_a_tick_tx.py +0 -0
  288. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_zh_ah_tx.py +0 -0
  289. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_zh_b_sina.py +0 -0
  290. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_zh_kcb_report.py +0 -0
  291. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock/stock_zh_kcb_sina.py +0 -0
  292. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/__init__.py +0 -0
  293. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/cons.py +0 -0
  294. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_a_below_net_asset_statistics.py +0 -0
  295. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_a_high_low.py +0 -0
  296. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_a_indicator.py +0 -0
  297. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_a_pe_and_pb.py +0 -0
  298. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_account_em.py +0 -0
  299. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_all_pb.py +0 -0
  300. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_analyst_em.py +0 -0
  301. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_board_industry_ths.py +0 -0
  302. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_buffett_index_lg.py +0 -0
  303. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_classify_sina.py +0 -0
  304. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_comment_em.py +0 -0
  305. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_concept_futu.py +0 -0
  306. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_congestion_lg.py +0 -0
  307. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_cyq_em.py +0 -0
  308. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_disclosure_cninfo.py +0 -0
  309. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_dxsyl_em.py +0 -0
  310. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_ebs_lg.py +0 -0
  311. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_esg_sina.py +0 -0
  312. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_fhps_em.py +0 -0
  313. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_fhps_ths.py +0 -0
  314. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_fund_flow.py +0 -0
  315. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_gddh_em.py +0 -0
  316. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_gdfx_em.py +0 -0
  317. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_gdhs.py +0 -0
  318. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_gdzjc_em.py +0 -0
  319. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_gpzy_em.py +0 -0
  320. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_gxl_lg.py +0 -0
  321. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_hist_em.py +0 -0
  322. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_hist_tx.py +0 -0
  323. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_hk_valuation_baidu.py +0 -0
  324. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_hot_xq.py +0 -0
  325. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_hsgt_em.py +0 -0
  326. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_hsgt_exchange_rate.py +0 -0
  327. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_hsgt_min_em.py +0 -0
  328. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_info.py +0 -0
  329. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_inner_trade_xq.py +0 -0
  330. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_irm_cninfo.py +0 -0
  331. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_jgdy_em.py +0 -0
  332. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_lh_yybpm.py +0 -0
  333. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_lhb_em.py +0 -0
  334. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_lhb_sina.py +0 -0
  335. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_margin_em.py +0 -0
  336. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_margin_sse.py +0 -0
  337. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_margin_szse.py +0 -0
  338. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_market_legu.py +0 -0
  339. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_pankou_em.py +0 -0
  340. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_qsjy_em.py +0 -0
  341. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_report_em.py +0 -0
  342. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_research_report_em.py +0 -0
  343. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_sns_sseinfo.py +0 -0
  344. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_sy_em.py +0 -0
  345. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_technology_ths.py +0 -0
  346. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_tfp_em.py +0 -0
  347. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_three_report_em.py +0 -0
  348. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_ttm_lyr.py +0 -0
  349. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_value_em.py +0 -0
  350. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_wencai.py +0 -0
  351. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_yjbb_em.py +0 -0
  352. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_yjyg_cninfo.py +0 -0
  353. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_yjyg_em.py +0 -0
  354. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_yzxdr_em.py +0 -0
  355. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_zdhtmx_em.py +0 -0
  356. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_zf_pg.py +0 -0
  357. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_zh_valuation_baidu.py +0 -0
  358. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_zh_vote_baidu.py +0 -0
  359. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/stock_ztb_em.py +0 -0
  360. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_feature/ths.js +0 -0
  361. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/__init__.py +0 -0
  362. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_finance.py +0 -0
  363. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_finance_hk.py +0 -0
  364. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_finance_ths.py +0 -0
  365. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_hold.py +0 -0
  366. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_ipo_declare.py +0 -0
  367. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_kcb_detail_sse.py +0 -0
  368. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_kcb_sse.py +0 -0
  369. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_mda_ym.py +0 -0
  370. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_notice.py +0 -0
  371. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_profit_forecast_em.py +0 -0
  372. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_profit_forecast_hk_etnet.py +0 -0
  373. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_profit_forecast_ths.py +0 -0
  374. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_recommend.py +0 -0
  375. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_register_em.py +0 -0
  376. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_restricted_em.py +0 -0
  377. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_zygc.py +0 -0
  378. {akshare-1.15.51 → akshare-1.15.53}/akshare/stock_fundamental/stock_zyjs_ths.py +0 -0
  379. {akshare-1.15.51 → akshare-1.15.53}/akshare/tool/__init__.py +0 -0
  380. {akshare-1.15.51 → akshare-1.15.53}/akshare/tool/trade_date_hist.py +0 -0
  381. {akshare-1.15.51 → akshare-1.15.53}/akshare/utils/__init__.py +0 -0
  382. {akshare-1.15.51 → akshare-1.15.53}/akshare/utils/cons.py +0 -0
  383. {akshare-1.15.51 → akshare-1.15.53}/akshare/utils/context.py +0 -0
  384. {akshare-1.15.51 → akshare-1.15.53}/akshare/utils/demjson.py +0 -0
  385. {akshare-1.15.51 → akshare-1.15.53}/akshare/utils/func.py +0 -0
  386. {akshare-1.15.51 → akshare-1.15.53}/akshare/utils/token_process.py +0 -0
  387. {akshare-1.15.51 → akshare-1.15.53}/akshare/utils/tqdm.py +0 -0
  388. {akshare-1.15.51 → akshare-1.15.53}/akshare.egg-info/dependency_links.txt +0 -0
  389. {akshare-1.15.51 → akshare-1.15.53}/akshare.egg-info/requires.txt +0 -0
  390. {akshare-1.15.51 → akshare-1.15.53}/akshare.egg-info/top_level.txt +0 -0
  391. {akshare-1.15.51 → akshare-1.15.53}/pyproject.toml +0 -0
  392. {akshare-1.15.51 → akshare-1.15.53}/setup.cfg +0 -0
  393. {akshare-1.15.51 → akshare-1.15.53}/setup.py +0 -0
  394. {akshare-1.15.51 → akshare-1.15.53}/tests/__init__.py +0 -0
  395. {akshare-1.15.51 → akshare-1.15.53}/tests/test_func.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: akshare
3
- Version: 1.15.51
3
+ Version: 1.15.53
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
@@ -2961,9 +2961,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
2961
2961
  1.15.49 fix: fix option_dce_daily interface
2962
2962
  1.15.50 fix: fix stock_gpzy_profile_em interface
2963
2963
  1.15.51 fix: fix stock_gpzy_pledge_ratio_em interface
2964
+ 1.15.52 fix: fix stock_zh_index_hist_csindex interface
2965
+ 1.15.53 fix: fix futures_inventory_99 interface
2964
2966
  """
2965
2967
 
2966
- __version__ = "1.15.51"
2968
+ __version__ = "1.15.53"
2967
2969
  __author__ = "AKFamily"
2968
2970
 
2969
2971
  import sys
@@ -3147,11 +3149,6 @@ from akshare.stock_feature.stock_hist_tx import stock_zh_a_hist_tx
3147
3149
  """
3148
3150
  from akshare.stock_feature.stock_cyq_em import stock_cyq_em
3149
3151
 
3150
- """
3151
- funddb-工具-估值情绪-恐贪指数
3152
- """
3153
- from akshare.index.index_fear_greed_funddb import index_fear_greed_funddb
3154
-
3155
3152
  """
3156
3153
  东财财富-分时数据
3157
3154
  """
@@ -3728,14 +3725,6 @@ from akshare.stock_feature.stock_hsgt_em import (
3728
3725
  stock_hsgt_fund_flow_summary_em,
3729
3726
  )
3730
3727
 
3731
- """
3732
- 指数估值
3733
- """
3734
- from akshare.index.index_stock_zh_csindex import (
3735
- index_value_hist_funddb,
3736
- index_value_name_funddb,
3737
- )
3738
-
3739
3728
  """
3740
3729
  基金规模
3741
3730
  """
@@ -64,30 +64,6 @@ inventory_temp_headers = {
64
64
  "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36",
65
65
  }
66
66
 
67
- sample_headers = {
68
- "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3",
69
- "Host": "service.99qh.com",
70
- "Origin": "http://service.99qh.com",
71
- "Referer": "http://www.99qh.com/d/store.aspx",
72
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36",
73
- }
74
-
75
- qh_headers = {
76
- "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
77
- "Accept-Encoding": "gzip, deflate",
78
- "Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8",
79
- "Cache-Control": "no-cache",
80
- "Connection": "keep-alive",
81
- "Content-Length": "8429",
82
- "Content-Type": "application/x-www-form-urlencoded",
83
- "Host": "service.99qh.com",
84
- "Origin": "http://service.99qh.com",
85
- "Pragma": "no-cache",
86
- "Cookie": "__utma=181566328.985082941.1656754961.1656754961.1656754961.1; __utmc=181566328; __utmz=181566328.1656754961.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); ASP.NET_SessionId=42k0mpzfu3fv5cxqmtrwc20y; tgw_l7_route=b26adbec28f4b4e1f7290033d59c43a7; __utmt=1; __utmb=181566328.2.10.1656754961",
87
- "Referer": "http://service.99qh.com/Storage/Storage.aspx?page=99qh",
88
- "Upgrade-Insecure-Requests": "1",
89
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36",
90
- }
91
67
  # 奇货可查
92
68
  QHKC_INDEX_URL = "https://www.qhkch.com/ajax/index_show.php"
93
69
  QHKC_INDEX_TREND_URL = "https://qhkch.com/ajax/indexes_trend.php"
@@ -0,0 +1,86 @@
1
+ #!/usr/bin/env python
2
+ # -*- coding:utf-8 -*-
3
+ """
4
+ Date: 2024/12/23 20:00
5
+ Desc: 99 期货网-大宗商品库存数据
6
+ https://www.99qh.com/
7
+ """
8
+
9
+ import json
10
+ from functools import lru_cache
11
+ from datetime import datetime
12
+ import pandas as pd
13
+ import requests
14
+ from bs4 import BeautifulSoup
15
+
16
+
17
+ @lru_cache(maxsize=32)
18
+ def __get_99_symbol_map() -> pd.DataFrame:
19
+ """
20
+ 99 期货网-品种代码对照表
21
+ https://www.99qh.com/data/stockIn?productId=12
22
+ :return: 品种代码对照表
23
+ :rtype: pandas.DataFrame
24
+ """
25
+ url = "https://www.99qh.com/data/stockIn"
26
+ r = requests.get(url)
27
+ soup = BeautifulSoup(r.text, features="lxml")
28
+ raw_data = soup.find(attrs={"id": "__NEXT_DATA__"}).text
29
+ data_json = json.loads(raw_data)
30
+ df_list = []
31
+ for i, item in enumerate(
32
+ data_json["props"]["pageProps"]["data"]["varietyListData"]
33
+ ):
34
+ temp_df = pd.DataFrame(
35
+ data_json["props"]["pageProps"]["data"]["varietyListData"][i]["productList"]
36
+ )
37
+ df_list.append(temp_df)
38
+
39
+ big_df = pd.concat(df_list, ignore_index=True)
40
+ return big_df
41
+
42
+
43
+ def futures_inventory_99(symbol: str = "豆一") -> pd.DataFrame:
44
+ """
45
+ 99 期货网-大宗商品库存数据
46
+ https://www.99qh.com/data/stockIn?productId=12
47
+ :param symbol: 交易所对应的具体品种; 如:大连商品交易所的 豆一
48
+ :type symbol: str
49
+ :return: 大宗商品库存数据
50
+ :rtype: pandas.DataFrame
51
+ """
52
+ temp_df = __get_99_symbol_map()
53
+ symbol_map = dict(zip(temp_df["name"], temp_df["productId"]))
54
+
55
+ url = "https://centerapi.fx168api.com/app/qh/api/stock/trend"
56
+ headers = {
57
+ "Content-Type": "application/json;charset=UTF-8",
58
+ "_pcc": "SGkj5avwu2h8Rs8/41r2LUwDHeEbaMKWe06+hWcEOO/uAQVbckWBHbwAvFbEI1eBBSvmTNqyjHKfFAn/kCpZ"
59
+ "IU7QNDvTrL2xGkQyuu+EVMU6RnZb/drmVGJRR6VhoHYMmzJvDuR6d43LnY219r44mGeL5x8qSUdh+cHjs0dm0AI=",
60
+ "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
61
+ "Chrome/58.0.3029.110 Safari/537.3",
62
+ "referer": "https://www.99qh.com",
63
+ }
64
+ params = {
65
+ "productId": symbol_map[symbol],
66
+ "type": "1",
67
+ "pageNo": "1",
68
+ "pageSize": "4000",
69
+ "startDate": "",
70
+ "endDate": f"{datetime.now().date().isoformat()}",
71
+ "appCategory": "web",
72
+ }
73
+ r = requests.get(url, params, headers=headers)
74
+ data_json = r.json()
75
+ temp_df = pd.DataFrame(data_json["data"]["list"])
76
+ temp_df.columns = ["日期", "收盘价", "库存"]
77
+ temp_df.sort_values(by=["日期"], ignore_index=True, inplace=True)
78
+ temp_df["日期"] = pd.to_datetime(temp_df["日期"], errors="coerce").dt.date
79
+ temp_df["收盘价"] = pd.to_numeric(temp_df["收盘价"], errors="coerce")
80
+ temp_df["库存"] = pd.to_numeric(temp_df["库存"], errors="coerce")
81
+ return temp_df
82
+
83
+
84
+ if __name__ == "__main__":
85
+ futures_inventory_99_df = futures_inventory_99(symbol="豆一")
86
+ print(futures_inventory_99_df)
@@ -0,0 +1,115 @@
1
+ # -*- coding:utf-8 -*-
2
+ # !/usr/bin/env python
3
+ """
4
+ Date: 2024/12/23 17:00
5
+ Desc: 中证指数-所有指数-历史行情数据
6
+ https://www.csindex.com.cn/zh-CN/indices/index-detail/H30374#/indices/family/list?index_series=1
7
+ """
8
+
9
+ import pandas as pd
10
+ import requests
11
+
12
+
13
+ def stock_zh_index_hist_csindex(
14
+ symbol: str = "000928",
15
+ start_date: str = "20180526",
16
+ end_date: str = "20240604",
17
+ ) -> pd.DataFrame:
18
+ """
19
+ 中证指数-具体指数-历史行情数据
20
+ P.S. 只有收盘价,正常情况下不应使用该接口,除非指数只有中证网站有
21
+ https://www.csindex.com.cn/zh-CN/indices/index-detail/H30374#/indices/family/detail?indexCode=H30374
22
+ :param symbol: 指数代码; e.g., H30374
23
+ :type symbol: str
24
+ :param start_date: 开始日期
25
+ :type start_date: str
26
+ :param end_date: 结束日期
27
+ :type end_date: str
28
+ :return: 包含日期和收盘价的指数数据
29
+ :rtype: pandas.DataFrame
30
+ """
31
+ url = "https://www.csindex.com.cn/csindex-home/perf/index-perf"
32
+ params = {
33
+ "indexCode": symbol,
34
+ "startDate": start_date,
35
+ "endDate": end_date,
36
+ }
37
+ r = requests.get(url, params=params)
38
+ data_json = r.json()
39
+ temp_df = pd.DataFrame(data_json["data"])
40
+ temp_df.columns = [
41
+ "日期",
42
+ "指数代码",
43
+ "指数中文全称",
44
+ "指数中文简称",
45
+ "指数英文全称",
46
+ "指数英文简称",
47
+ "开盘",
48
+ "最高",
49
+ "最低",
50
+ "收盘",
51
+ "涨跌",
52
+ "涨跌幅",
53
+ "成交量",
54
+ "成交金额",
55
+ "样本数量",
56
+ "滚动市盈率",
57
+ ]
58
+ temp_df["日期"] = pd.to_datetime(temp_df["日期"], errors="coerce").dt.date
59
+ temp_df["开盘"] = pd.to_numeric(temp_df["开盘"], errors="coerce")
60
+ temp_df["最高"] = pd.to_numeric(temp_df["最高"], errors="coerce")
61
+ temp_df["最低"] = pd.to_numeric(temp_df["最低"], errors="coerce")
62
+ temp_df["收盘"] = pd.to_numeric(temp_df["收盘"], errors="coerce")
63
+ temp_df["涨跌"] = pd.to_numeric(temp_df["涨跌"], errors="coerce")
64
+ temp_df["涨跌幅"] = pd.to_numeric(temp_df["涨跌幅"], errors="coerce")
65
+ temp_df["成交量"] = pd.to_numeric(temp_df["成交量"], errors="coerce")
66
+ temp_df["成交金额"] = pd.to_numeric(temp_df["成交金额"], errors="coerce")
67
+ temp_df["样本数量"] = pd.to_numeric(temp_df["样本数量"], errors="coerce")
68
+ temp_df["滚动市盈率"] = pd.to_numeric(temp_df["滚动市盈率"], errors="coerce")
69
+ return temp_df
70
+
71
+
72
+ def stock_zh_index_value_csindex(symbol: str = "H30374") -> pd.DataFrame:
73
+ """
74
+ 中证指数-指数估值数据
75
+ https://www.csindex.com.cn/zh-CN/indices/index-detail/H30374#/indices/family/detail?indexCode=H30374
76
+ :param symbol: 指数代码; e.g., H30374
77
+ :type symbol: str
78
+ :return: 指数估值数据
79
+ :rtype: pandas.DataFrame
80
+ """
81
+ url = (
82
+ f"https://csi-web-dev.oss-cn-shanghai-finance-1-pub.aliyuncs.com/static/"
83
+ f"html/csindex/public/uploads/file/autofile/indicator/{symbol}indicator.xls"
84
+ )
85
+ temp_df = pd.read_excel(url)
86
+ temp_df.columns = [
87
+ "日期",
88
+ "指数代码",
89
+ "指数中文全称",
90
+ "指数中文简称",
91
+ "指数英文全称",
92
+ "指数英文简称",
93
+ "市盈率1",
94
+ "市盈率2",
95
+ "股息率1",
96
+ "股息率2",
97
+ ]
98
+ temp_df["日期"] = pd.to_datetime(
99
+ temp_df["日期"], format="%Y%m%d", errors="coerce"
100
+ ).dt.date
101
+ temp_df["市盈率1"] = pd.to_numeric(temp_df["市盈率1"], errors="coerce")
102
+ temp_df["市盈率2"] = pd.to_numeric(temp_df["市盈率2"], errors="coerce")
103
+ temp_df["股息率1"] = pd.to_numeric(temp_df["股息率1"], errors="coerce")
104
+ temp_df["股息率2"] = pd.to_numeric(temp_df["股息率2"], errors="coerce")
105
+ return temp_df
106
+
107
+
108
+ if __name__ == "__main__":
109
+ stock_zh_index_hist_csindex_df = stock_zh_index_hist_csindex(
110
+ symbol="000928", start_date="20100101", end_date="20240604"
111
+ )
112
+ print(stock_zh_index_hist_csindex_df)
113
+
114
+ stock_zh_index_value_csindex_df = stock_zh_index_value_csindex(symbol="H30374")
115
+ print(stock_zh_index_value_csindex_df)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: akshare
3
- Version: 1.15.51
3
+ Version: 1.15.53
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
@@ -135,7 +135,6 @@ akshare/futures/futures_stock_js.py
135
135
  akshare/futures/futures_to_spot.py
136
136
  akshare/futures/futures_warehouse_receipt.py
137
137
  akshare/futures/futures_zh_sina.py
138
- akshare/futures/inventory_data.py
139
138
  akshare/futures/receipt.py
140
139
  akshare/futures/requests_fun.py
141
140
  akshare/futures/symbol_var.py
@@ -166,7 +165,6 @@ akshare/index/index_cons.py
166
165
  akshare/index/index_cx.py
167
166
  akshare/index/index_drewry.py
168
167
  akshare/index/index_eri.py
169
- akshare/index/index_fear_greed_funddb.py
170
168
  akshare/index/index_hog.py
171
169
  akshare/index/index_kq_fz.py
172
170
  akshare/index/index_kq_ss.py
@@ -1,297 +0,0 @@
1
- #!/usr/bin/env python
2
- # -*- coding:utf-8 -*-
3
- """
4
- Date: 2024/1/10 19:00
5
- Desc: 99 期货网-大宗商品库存数据
6
- http://www.99qh.com/d/store.aspx
7
- """
8
- from io import StringIO
9
-
10
- import pandas as pd
11
- import requests
12
- from bs4 import BeautifulSoup
13
-
14
- from akshare.futures.cons import (
15
- qh_headers,
16
- sample_headers,
17
- )
18
-
19
-
20
- def futures_inventory_99(
21
- exchange: str = "大连商品交易所", symbol: str = "豆一"
22
- ) -> pd.DataFrame:
23
- """
24
- 99 期货网-大宗商品库存数据
25
- http://www.99qh.com/d/store.aspx
26
- :param exchange: 交易所名称; choice of {"上海期货交易所", "郑州商品交易所", "大连商品交易所", "LME", "NYMEX", "CBOT", "NYBOT", "TOCOM", "上海国际能源交易中心", "OSE"}
27
- :type exchange: str
28
- :param symbol: 交易所对应的具体品种; 如:大连商品交易所的 豆一
29
- :type symbol: str
30
- :return: 大宗商品库存数据
31
- :rtype: pandas.DataFrame
32
- """
33
- data_code = {
34
- "1": [
35
- "1",
36
- "2",
37
- "3",
38
- "12",
39
- "32",
40
- "36",
41
- "37",
42
- "40",
43
- "42",
44
- "47",
45
- "56",
46
- "63",
47
- "69",
48
- "70",
49
- "79",
50
- "85",
51
- ],
52
- "2": [
53
- "4",
54
- "14",
55
- "29",
56
- "31",
57
- "33",
58
- "38",
59
- "44",
60
- "45",
61
- "50",
62
- "51",
63
- "52",
64
- "55",
65
- "59",
66
- "64",
67
- "66",
68
- "67",
69
- "75",
70
- "76",
71
- "81",
72
- "82",
73
- "87",
74
- "92",
75
- "95",
76
- ],
77
- "3": [
78
- "6",
79
- "7",
80
- "8",
81
- "15",
82
- "30",
83
- "34",
84
- "35",
85
- "39",
86
- "43",
87
- "53",
88
- "57",
89
- "58",
90
- "61",
91
- "62",
92
- "68",
93
- "80",
94
- "84",
95
- "86",
96
- "88",
97
- "89",
98
- "94",
99
- ],
100
- "4": ["9", "10", "16", "17", "18", "23", "28"],
101
- "5": ["11", "20", "21"],
102
- "6": ["13", "24", "25", "26", "27"],
103
- "7": ["19"],
104
- "8": ["22"],
105
- "10": ["78", "83", "90", "93"],
106
- "11": ["91"],
107
- }
108
- data_name = {
109
- "1": [
110
- "铜",
111
- "铝",
112
- "橡胶",
113
- "燃料油",
114
- "锌",
115
- "黄金",
116
- "螺纹钢",
117
- "线材",
118
- "铅",
119
- "白银",
120
- "石油沥青",
121
- "热轧卷板",
122
- "锡",
123
- "镍",
124
- "纸浆",
125
- "不锈钢",
126
- ],
127
- "2": [
128
- "强麦",
129
- "一号棉",
130
- "白糖",
131
- "PTA",
132
- "菜籽油",
133
- "早籼稻",
134
- "甲醇",
135
- "普麦",
136
- "玻璃",
137
- "油菜籽",
138
- "菜籽粕",
139
- "动力煤",
140
- "粳稻",
141
- "晚籼稻",
142
- "硅铁",
143
- "锰硅",
144
- "棉纱",
145
- "苹果",
146
- "红枣",
147
- "尿素",
148
- "纯碱",
149
- "短纤",
150
- "花生",
151
- ],
152
- "3": [
153
- "豆一",
154
- "豆二",
155
- "豆粕",
156
- "玉米",
157
- "豆油",
158
- "聚乙烯",
159
- "棕榈油",
160
- "聚氯乙烯",
161
- "焦炭",
162
- "焦煤",
163
- "铁矿石",
164
- "鸡蛋",
165
- "胶合板",
166
- "聚丙烯",
167
- "玉米淀粉",
168
- "乙二醇",
169
- "粳米",
170
- "苯乙烯",
171
- "纤维板",
172
- "液化石油气",
173
- "生猪",
174
- ],
175
- "4": ["LME铜", "LME铝", "LME镍", "LME铅", "LME锌", "LME锡", "LME铝合金"],
176
- "5": ["COMEX铜", "COMEX金", "COMEX银"],
177
- "6": ["CBOT大豆", "CBOT小麦", "CBOT玉米", "CBOT燕麦", "CBOT糙米"],
178
- "7": ["NYBOT2号棉"],
179
- "8": ["TOCOM橡胶"],
180
- "10": ["原油", "20号胶", "低硫燃料油", "国际铜"],
181
- "11": ["OSE橡胶"],
182
- }
183
- temp_out_exchange_name = {
184
- "1": "上海期货交易所",
185
- "2": "郑州商品交易所",
186
- "3": "大连商品交易所",
187
- "4": "LME",
188
- "5": "NYMEX",
189
- "6": "CBOT",
190
- "7": "NYBOT",
191
- "8": "TOCOM",
192
- "10": "上海国际能源交易中心",
193
- "11": "OSE",
194
- }
195
- exchange_map = {
196
- value: key for key, value in temp_out_exchange_name.items()
197
- }
198
- exchange = exchange_map[exchange]
199
- temp_symbol_code_map = dict(zip(data_name[exchange], data_code[exchange]))
200
- symbol = temp_symbol_code_map[symbol]
201
- out_exchange_name = {
202
- "1": "上海期货交易所",
203
- "2": "郑州商品交易所",
204
- "3": "大连商品交易所",
205
- "4": "LME",
206
- "5": "NYMEX",
207
- "6": "CBOT",
208
- "7": "NYBOT",
209
- "8": "TOCOM",
210
- "10": "上海国际能源交易中心",
211
- "11": "OSE",
212
- }
213
- name_temp_dict = {}
214
- code_temp_dict = {}
215
- for num in data_code.keys():
216
- name_temp_dict[out_exchange_name[num]] = dict(
217
- zip(data_code[num], data_name[num])
218
- )
219
- code_temp_dict[num] = dict(zip(data_code[num], data_name[num]))
220
- n = 10
221
- while n != 0:
222
- try:
223
- n -= 1
224
- session = requests.Session()
225
- url = "http://service.99qh.com/Storage/Storage.aspx"
226
- params = {"page": "99qh"}
227
- r = session.post(url, params=params, headers=sample_headers)
228
- cookie = r.cookies.get_dict()
229
- url = "http://service.99qh.com/Storage/Storage.aspx"
230
- params = {"page": "99qh"}
231
- r = requests.post(
232
- url, params=params, headers=sample_headers, cookies=cookie
233
- )
234
- soup = BeautifulSoup(r.text, "lxml")
235
- view_state = soup.find_all(attrs={"id": "__VIEWSTATE"})[0]["value"]
236
- even_validation = soup.find_all(attrs={"id": "__EVENTVALIDATION"})[
237
- 0
238
- ]["value"]
239
- payload = {
240
- "__EVENTTARGET": "ddlExchName",
241
- "__EVENTARGUMENT": "",
242
- "__LASTFOCUS": "",
243
- "__VIEWSTATE": view_state,
244
- "__VIEWSTATEGENERATOR": "6EAC22FA",
245
- "__EVENTVALIDATION": even_validation,
246
- "ddlExchName": int(exchange),
247
- "ddlGoodsName": 1,
248
- }
249
- res = requests.post(
250
- url,
251
- params={"page": "99qh"},
252
- data=payload,
253
- headers=qh_headers,
254
- cookies=cookie,
255
- )
256
- soup = BeautifulSoup(res.text, "lxml")
257
- view_state = soup.find_all(attrs={"id": "__VIEWSTATE"})[0]["value"]
258
- even_validation = soup.find_all(attrs={"id": "__EVENTVALIDATION"})[
259
- 0
260
- ]["value"]
261
- payload = {
262
- "__EVENTTARGET": "ddlGoodsName",
263
- "__EVENTARGUMENT": "",
264
- "__LASTFOCUS": "",
265
- "__VIEWSTATE": view_state,
266
- "__VIEWSTATEGENERATOR": "6EAC22FA",
267
- "__EVENTVALIDATION": even_validation,
268
- "ddlExchName": int(exchange),
269
- "ddlGoodsName": int(symbol),
270
- }
271
- res = requests.post(
272
- url,
273
- params=params,
274
- data=payload,
275
- headers=qh_headers,
276
- cookies=cookie,
277
- )
278
- data_df = pd.read_html(StringIO(res.text))[-1].T
279
- data_df.columns = data_df.iloc[0, :]
280
- data_df = data_df.iloc[1:, :]
281
- data_df.reset_index(inplace=True, drop=True)
282
- data_df.columns.name = None
283
- data_df["日期"] = pd.to_datetime(data_df["日期"]).dt.date
284
- data_df["库存"] = pd.to_numeric(data_df["库存"])
285
- data_df["增减"] = pd.to_numeric(data_df["增减"])
286
- data_df.sort_values("日期", inplace=True)
287
- data_df.reset_index(inplace=True, drop=True)
288
- return data_df
289
- except:
290
- continue
291
-
292
-
293
- if __name__ == "__main__":
294
- futures_inventory_99_df = futures_inventory_99(
295
- exchange="郑州商品交易所", symbol="菜籽油"
296
- )
297
- print(futures_inventory_99_df)