akshare 1.17.71__tar.gz → 1.17.73__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 (414) hide show
  1. {akshare-1.17.71 → akshare-1.17.73}/PKG-INFO +1 -1
  2. {akshare-1.17.71 → akshare-1.17.73}/akshare/__init__.py +4 -2
  3. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_daily_bar.py +50 -41
  4. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_warehouse_receipt.py +34 -34
  5. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/receipt.py +22 -20
  6. {akshare-1.17.71 → akshare-1.17.73}/akshare.egg-info/PKG-INFO +1 -1
  7. {akshare-1.17.71 → akshare-1.17.73}/LICENSE +0 -0
  8. {akshare-1.17.71 → akshare-1.17.73}/README.md +0 -0
  9. {akshare-1.17.71 → akshare-1.17.73}/akshare/air/__init__.py +0 -0
  10. {akshare-1.17.71 → akshare-1.17.73}/akshare/air/air_hebei.py +0 -0
  11. {akshare-1.17.71 → akshare-1.17.73}/akshare/air/air_zhenqi.py +0 -0
  12. {akshare-1.17.71 → akshare-1.17.73}/akshare/air/cons.py +0 -0
  13. {akshare-1.17.71 → akshare-1.17.73}/akshare/air/crypto.js +0 -0
  14. {akshare-1.17.71 → akshare-1.17.73}/akshare/air/outcrypto.js +0 -0
  15. {akshare-1.17.71 → akshare-1.17.73}/akshare/air/sunrise_tad.py +0 -0
  16. {akshare-1.17.71 → akshare-1.17.73}/akshare/article/__init__.py +0 -0
  17. {akshare-1.17.71 → akshare-1.17.73}/akshare/article/cons.py +0 -0
  18. {akshare-1.17.71 → akshare-1.17.73}/akshare/article/epu_index.py +0 -0
  19. {akshare-1.17.71 → akshare-1.17.73}/akshare/article/ff_factor.py +0 -0
  20. {akshare-1.17.71 → akshare-1.17.73}/akshare/article/fred_md.py +0 -0
  21. {akshare-1.17.71 → akshare-1.17.73}/akshare/article/risk_rv.py +0 -0
  22. {akshare-1.17.71 → akshare-1.17.73}/akshare/bank/__init__.py +0 -0
  23. {akshare-1.17.71 → akshare-1.17.73}/akshare/bank/bank_cbirc_2020.py +0 -0
  24. {akshare-1.17.71 → akshare-1.17.73}/akshare/bank/cons.py +0 -0
  25. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/__init__.py +0 -0
  26. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_buy_back_em.py +0 -0
  27. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_cb_sina.py +0 -0
  28. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_cb_ths.py +0 -0
  29. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_cbond.py +0 -0
  30. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_china.py +0 -0
  31. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_china_money.py +0 -0
  32. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_convert.py +0 -0
  33. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_em.py +0 -0
  34. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_info_cm.py +0 -0
  35. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_issue_cninfo.py +0 -0
  36. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_nafmii.py +0 -0
  37. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_summary.py +0 -0
  38. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_zh_cov.py +0 -0
  39. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/bond_zh_sina.py +0 -0
  40. {akshare-1.17.71 → akshare-1.17.73}/akshare/bond/cons.py +0 -0
  41. {akshare-1.17.71 → akshare-1.17.73}/akshare/cal/__init__.py +0 -0
  42. {akshare-1.17.71 → akshare-1.17.73}/akshare/cal/rv.py +0 -0
  43. {akshare-1.17.71 → akshare-1.17.73}/akshare/cost/__init__.py +0 -0
  44. {akshare-1.17.71 → akshare-1.17.73}/akshare/cost/cost_living.py +0 -0
  45. {akshare-1.17.71 → akshare-1.17.73}/akshare/crypto/__init__.py +0 -0
  46. {akshare-1.17.71 → akshare-1.17.73}/akshare/crypto/crypto_bitcoin_cme.py +0 -0
  47. {akshare-1.17.71 → akshare-1.17.73}/akshare/crypto/crypto_hold.py +0 -0
  48. {akshare-1.17.71 → akshare-1.17.73}/akshare/currency/__init__.py +0 -0
  49. {akshare-1.17.71 → akshare-1.17.73}/akshare/currency/currency.py +0 -0
  50. {akshare-1.17.71 → akshare-1.17.73}/akshare/currency/currency_china_bank_sina.py +0 -0
  51. {akshare-1.17.71 → akshare-1.17.73}/akshare/currency/currency_safe.py +0 -0
  52. {akshare-1.17.71 → akshare-1.17.73}/akshare/data/__init__.py +0 -0
  53. {akshare-1.17.71 → akshare-1.17.73}/akshare/data/cninfo.js +0 -0
  54. {akshare-1.17.71 → akshare-1.17.73}/akshare/data/crypto_info.zip +0 -0
  55. {akshare-1.17.71 → akshare-1.17.73}/akshare/data/ths.js +0 -0
  56. {akshare-1.17.71 → akshare-1.17.73}/akshare/datasets.py +0 -0
  57. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/__init__.py +0 -0
  58. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/cons.py +0 -0
  59. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_australia.py +0 -0
  60. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_bank.py +0 -0
  61. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_canada.py +0 -0
  62. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_china.py +0 -0
  63. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_china_hk.py +0 -0
  64. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_china_nbs.py +0 -0
  65. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_constitute.py +0 -0
  66. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_euro.py +0 -0
  67. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_finance_ths.py +0 -0
  68. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_germany.py +0 -0
  69. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_info_ws.py +0 -0
  70. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_japan.py +0 -0
  71. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_other.py +0 -0
  72. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_swiss.py +0 -0
  73. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_uk.py +0 -0
  74. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/macro_usa.py +0 -0
  75. {akshare-1.17.71 → akshare-1.17.73}/akshare/economic/marco_cnbs.py +0 -0
  76. {akshare-1.17.71 → akshare-1.17.73}/akshare/energy/__init__.py +0 -0
  77. {akshare-1.17.71 → akshare-1.17.73}/akshare/energy/energy_carbon.py +0 -0
  78. {akshare-1.17.71 → akshare-1.17.73}/akshare/energy/energy_oil_em.py +0 -0
  79. {akshare-1.17.71 → akshare-1.17.73}/akshare/event/__init__.py +0 -0
  80. {akshare-1.17.71 → akshare-1.17.73}/akshare/event/cons.py +0 -0
  81. {akshare-1.17.71 → akshare-1.17.73}/akshare/event/migration.py +0 -0
  82. {akshare-1.17.71 → akshare-1.17.73}/akshare/exceptions.py +0 -0
  83. {akshare-1.17.71 → akshare-1.17.73}/akshare/file_fold/__init__.py +0 -0
  84. {akshare-1.17.71 → akshare-1.17.73}/akshare/file_fold/calendar.json +0 -0
  85. {akshare-1.17.71 → akshare-1.17.73}/akshare/forex/__init__.py +0 -0
  86. {akshare-1.17.71 → akshare-1.17.73}/akshare/forex/cons.py +0 -0
  87. {akshare-1.17.71 → akshare-1.17.73}/akshare/forex/forex_em.py +0 -0
  88. {akshare-1.17.71 → akshare-1.17.73}/akshare/fortune/__init__.py +0 -0
  89. {akshare-1.17.71 → akshare-1.17.73}/akshare/fortune/fortune_500.py +0 -0
  90. {akshare-1.17.71 → akshare-1.17.73}/akshare/fortune/fortune_bloomberg.py +0 -0
  91. {akshare-1.17.71 → akshare-1.17.73}/akshare/fortune/fortune_forbes_500.py +0 -0
  92. {akshare-1.17.71 → akshare-1.17.73}/akshare/fortune/fortune_hurun.py +0 -0
  93. {akshare-1.17.71 → akshare-1.17.73}/akshare/fortune/fortune_xincaifu_500.py +0 -0
  94. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/__init__.py +0 -0
  95. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_amac.py +0 -0
  96. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_announcement_em.py +0 -0
  97. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_aum_em.py +0 -0
  98. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_em.py +0 -0
  99. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_etf_em.py +0 -0
  100. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_etf_sina.py +0 -0
  101. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_etf_ths.py +0 -0
  102. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_fee_em.py +0 -0
  103. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_fhsp_em.py +0 -0
  104. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_init_em.py +0 -0
  105. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_lof_em.py +0 -0
  106. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_manager.py +0 -0
  107. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_overview_em.py +0 -0
  108. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_portfolio_em.py +0 -0
  109. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_position_lg.py +0 -0
  110. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_rank_em.py +0 -0
  111. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_rating.py +0 -0
  112. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_report_cninfo.py +0 -0
  113. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_scale_em.py +0 -0
  114. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_scale_sina.py +0 -0
  115. {akshare-1.17.71 → akshare-1.17.73}/akshare/fund/fund_xq.py +0 -0
  116. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/__init__.py +0 -0
  117. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/cons.py +0 -0
  118. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/cot.py +0 -0
  119. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_basis.py +0 -0
  120. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_comex_em.py +0 -0
  121. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_comm_ctp.py +0 -0
  122. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_comm_qihuo.py +0 -0
  123. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_contract_detail.py +0 -0
  124. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_foreign.py +0 -0
  125. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_hf_em.py +0 -0
  126. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_hist_em.py +0 -0
  127. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_hq_sina.py +0 -0
  128. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_index_ccidx.py +0 -0
  129. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_inventory_99.py +0 -0
  130. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_inventory_em.py +0 -0
  131. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_news_shmet.py +0 -0
  132. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_roll_yield.py +0 -0
  133. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_rule.py +0 -0
  134. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_rule_em.py +0 -0
  135. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_settlement_price_sgx.py +0 -0
  136. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_spot_stock_em.py +0 -0
  137. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_stock_js.py +0 -0
  138. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_to_spot.py +0 -0
  139. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/futures_zh_sina.py +0 -0
  140. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/requests_fun.py +0 -0
  141. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures/symbol_var.py +0 -0
  142. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/__init__.py +0 -0
  143. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/cons.py +0 -0
  144. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/futures_contract_info_cffex.py +0 -0
  145. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/futures_contract_info_czce.py +0 -0
  146. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/futures_contract_info_dce.py +0 -0
  147. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/futures_contract_info_gfex.py +0 -0
  148. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/futures_contract_info_ine.py +0 -0
  149. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/futures_contract_info_shfe.py +0 -0
  150. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/futures_cot_sina.py +0 -0
  151. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/futures_hog.py +0 -0
  152. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/futures_index_sina.py +0 -0
  153. {akshare-1.17.71 → akshare-1.17.73}/akshare/futures_derivative/futures_spot_sys.py +0 -0
  154. {akshare-1.17.71 → akshare-1.17.73}/akshare/fx/__init__.py +0 -0
  155. {akshare-1.17.71 → akshare-1.17.73}/akshare/fx/cons.py +0 -0
  156. {akshare-1.17.71 → akshare-1.17.73}/akshare/fx/currency_investing.py +0 -0
  157. {akshare-1.17.71 → akshare-1.17.73}/akshare/fx/fx_c_swap_cm.py +0 -0
  158. {akshare-1.17.71 → akshare-1.17.73}/akshare/fx/fx_quote.py +0 -0
  159. {akshare-1.17.71 → akshare-1.17.73}/akshare/fx/fx_quote_baidu.py +0 -0
  160. {akshare-1.17.71 → akshare-1.17.73}/akshare/hf/__init__.py +0 -0
  161. {akshare-1.17.71 → akshare-1.17.73}/akshare/hf/hf_sp500.py +0 -0
  162. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/__init__.py +0 -0
  163. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/cons.py +0 -0
  164. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_cflp.py +0 -0
  165. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_cni.py +0 -0
  166. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_cons.py +0 -0
  167. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_csindex.py +0 -0
  168. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_cx.py +0 -0
  169. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_drewry.py +0 -0
  170. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_eri.py +0 -0
  171. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_global_em.py +0 -0
  172. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_global_sina.py +0 -0
  173. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_hog.py +0 -0
  174. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_kq_fz.py +0 -0
  175. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_kq_ss.py +0 -0
  176. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_option_qvix.py +0 -0
  177. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_research_fund_sw.py +0 -0
  178. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_research_sw.py +0 -0
  179. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_spot.py +0 -0
  180. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_stock_hk.py +0 -0
  181. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_stock_us_sina.py +0 -0
  182. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_stock_zh.py +0 -0
  183. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_stock_zh_csindex.py +0 -0
  184. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_sugar.py +0 -0
  185. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_sw.py +0 -0
  186. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_yw.py +0 -0
  187. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_zh_a_scope.py +0 -0
  188. {akshare-1.17.71 → akshare-1.17.73}/akshare/index/index_zh_em.py +0 -0
  189. {akshare-1.17.71 → akshare-1.17.73}/akshare/interest_rate/__init__.py +0 -0
  190. {akshare-1.17.71 → akshare-1.17.73}/akshare/interest_rate/interbank_rate_em.py +0 -0
  191. {akshare-1.17.71 → akshare-1.17.73}/akshare/movie/__init__.py +0 -0
  192. {akshare-1.17.71 → akshare-1.17.73}/akshare/movie/artist_yien.py +0 -0
  193. {akshare-1.17.71 → akshare-1.17.73}/akshare/movie/jm.js +0 -0
  194. {akshare-1.17.71 → akshare-1.17.73}/akshare/movie/movie_yien.py +0 -0
  195. {akshare-1.17.71 → akshare-1.17.73}/akshare/movie/video_yien.py +0 -0
  196. {akshare-1.17.71 → akshare-1.17.73}/akshare/news/__init__.py +0 -0
  197. {akshare-1.17.71 → akshare-1.17.73}/akshare/news/news_baidu.py +0 -0
  198. {akshare-1.17.71 → akshare-1.17.73}/akshare/news/news_cctv.py +0 -0
  199. {akshare-1.17.71 → akshare-1.17.73}/akshare/news/news_stock.py +0 -0
  200. {akshare-1.17.71 → akshare-1.17.73}/akshare/nlp/__init__.py +0 -0
  201. {akshare-1.17.71 → akshare-1.17.73}/akshare/nlp/nlp_interface.py +0 -0
  202. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/__init__.py +0 -0
  203. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/cons.py +0 -0
  204. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_comm_qihuo.py +0 -0
  205. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_commodity.py +0 -0
  206. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_commodity_sina.py +0 -0
  207. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_current_sse.py +0 -0
  208. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_current_szse.py +0 -0
  209. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_czce.py +0 -0
  210. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_daily_stats_sse_szse.py +0 -0
  211. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_em.py +0 -0
  212. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_finance.py +0 -0
  213. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_finance_sina.py +0 -0
  214. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_lhb_em.py +0 -0
  215. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_margin.py +0 -0
  216. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_premium_analysis_em.py +0 -0
  217. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_risk_analysis_em.py +0 -0
  218. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_risk_indicator_sse.py +0 -0
  219. {akshare-1.17.71 → akshare-1.17.73}/akshare/option/option_value_analysis_em.py +0 -0
  220. {akshare-1.17.71 → akshare-1.17.73}/akshare/other/__init__.py +0 -0
  221. {akshare-1.17.71 → akshare-1.17.73}/akshare/other/other_car_cpca.py +0 -0
  222. {akshare-1.17.71 → akshare-1.17.73}/akshare/other/other_car_gasgoo.py +0 -0
  223. {akshare-1.17.71 → akshare-1.17.73}/akshare/pro/__init__.py +0 -0
  224. {akshare-1.17.71 → akshare-1.17.73}/akshare/pro/client.py +0 -0
  225. {akshare-1.17.71 → akshare-1.17.73}/akshare/pro/cons.py +0 -0
  226. {akshare-1.17.71 → akshare-1.17.73}/akshare/pro/data_pro.py +0 -0
  227. {akshare-1.17.71 → akshare-1.17.73}/akshare/qdii/__init__.py +0 -0
  228. {akshare-1.17.71 → akshare-1.17.73}/akshare/qdii/qdii_jsl.py +0 -0
  229. {akshare-1.17.71 → akshare-1.17.73}/akshare/qhkc/__init__.py +0 -0
  230. {akshare-1.17.71 → akshare-1.17.73}/akshare/qhkc/qhkc_api.py +0 -0
  231. {akshare-1.17.71 → akshare-1.17.73}/akshare/qhkc_web/__init__.py +0 -0
  232. {akshare-1.17.71 → akshare-1.17.73}/akshare/qhkc_web/qhkc_fund.py +0 -0
  233. {akshare-1.17.71 → akshare-1.17.73}/akshare/qhkc_web/qhkc_index.py +0 -0
  234. {akshare-1.17.71 → akshare-1.17.73}/akshare/qhkc_web/qhkc_tool.py +0 -0
  235. {akshare-1.17.71 → akshare-1.17.73}/akshare/rate/__init__.py +0 -0
  236. {akshare-1.17.71 → akshare-1.17.73}/akshare/rate/repo_rate.py +0 -0
  237. {akshare-1.17.71 → akshare-1.17.73}/akshare/reits/__init__.py +0 -0
  238. {akshare-1.17.71 → akshare-1.17.73}/akshare/reits/reits_basic.py +0 -0
  239. {akshare-1.17.71 → akshare-1.17.73}/akshare/request.py +0 -0
  240. {akshare-1.17.71 → akshare-1.17.73}/akshare/spot/__init__.py +0 -0
  241. {akshare-1.17.71 → akshare-1.17.73}/akshare/spot/spot_hog_soozhu.py +0 -0
  242. {akshare-1.17.71 → akshare-1.17.73}/akshare/spot/spot_price_qh.py +0 -0
  243. {akshare-1.17.71 → akshare-1.17.73}/akshare/spot/spot_sge.py +0 -0
  244. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/__init__.py +0 -0
  245. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/cons.py +0 -0
  246. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_allotment_cninfo.py +0 -0
  247. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_ask_bid_em.py +0 -0
  248. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_board_concept_em.py +0 -0
  249. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_board_industry_em.py +0 -0
  250. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_cg_equity_mortgage.py +0 -0
  251. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_cg_guarantee.py +0 -0
  252. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_cg_lawsuit.py +0 -0
  253. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_dividend_cninfo.py +0 -0
  254. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_dzjy_em.py +0 -0
  255. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_fund_em.py +0 -0
  256. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_fund_hold.py +0 -0
  257. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_gsrl_em.py +0 -0
  258. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hk_comparison_em.py +0 -0
  259. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hk_famous.py +0 -0
  260. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hk_fhpx_ths.py +0 -0
  261. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hk_hot_rank_em.py +0 -0
  262. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hk_sina.py +0 -0
  263. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hold_control_cninfo.py +0 -0
  264. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hold_control_em.py +0 -0
  265. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hold_num_cninfo.py +0 -0
  266. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hot_rank_em.py +0 -0
  267. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hot_search_baidu.py +0 -0
  268. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hot_up_em.py +0 -0
  269. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_hsgt_em.py +0 -0
  270. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_industry.py +0 -0
  271. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_industry_cninfo.py +0 -0
  272. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_industry_pe_cninfo.py +0 -0
  273. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_industry_sw.py +0 -0
  274. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_info.py +0 -0
  275. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_info_em.py +0 -0
  276. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_intraday_em.py +0 -0
  277. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_intraday_sina.py +0 -0
  278. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_ipo_summary_cninfo.py +0 -0
  279. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_new_cninfo.py +0 -0
  280. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_news_cx.py +0 -0
  281. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_profile_cninfo.py +0 -0
  282. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_profile_em.py +0 -0
  283. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_rank_forecast.py +0 -0
  284. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_repurchase_em.py +0 -0
  285. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_share_changes_cninfo.py +0 -0
  286. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_share_hold.py +0 -0
  287. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_stop.py +0 -0
  288. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_summary.py +0 -0
  289. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_us_famous.py +0 -0
  290. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_us_js.py +0 -0
  291. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_us_pink.py +0 -0
  292. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_us_sina.py +0 -0
  293. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_weibo_nlp.py +0 -0
  294. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_xq.py +0 -0
  295. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_zh_a_sina.py +0 -0
  296. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_zh_a_special.py +0 -0
  297. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_zh_a_tick_tx.py +0 -0
  298. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_zh_ah_tx.py +0 -0
  299. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_zh_b_sina.py +0 -0
  300. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_zh_comparison_em.py +0 -0
  301. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_zh_kcb_report.py +0 -0
  302. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock/stock_zh_kcb_sina.py +0 -0
  303. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_a/__init__.py +0 -0
  304. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_a/stock_board_concept_name_em.py +0 -0
  305. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_a/stock_individual_fund_flow_rank.py +0 -0
  306. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_a/stock_zh_a_spot.py +0 -0
  307. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/__init__.py +0 -0
  308. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/cons.py +0 -0
  309. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_a_below_net_asset_statistics.py +0 -0
  310. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_a_high_low.py +0 -0
  311. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_a_indicator.py +0 -0
  312. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_a_pe_and_pb.py +0 -0
  313. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_account_em.py +0 -0
  314. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_all_pb.py +0 -0
  315. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_analyst_em.py +0 -0
  316. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_board_concept_ths.py +0 -0
  317. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_board_industry_ths.py +0 -0
  318. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_buffett_index_lg.py +0 -0
  319. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_classify_sina.py +0 -0
  320. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_comment_em.py +0 -0
  321. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_concept_futu.py +0 -0
  322. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_congestion_lg.py +0 -0
  323. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_cyq_em.py +0 -0
  324. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_disclosure_cninfo.py +0 -0
  325. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_dxsyl_em.py +0 -0
  326. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_ebs_lg.py +0 -0
  327. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_esg_sina.py +0 -0
  328. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_fhps_em.py +0 -0
  329. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_fhps_ths.py +0 -0
  330. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_fund_flow.py +0 -0
  331. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_gddh_em.py +0 -0
  332. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_gdfx_em.py +0 -0
  333. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_gdhs.py +0 -0
  334. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_gdzjc_em.py +0 -0
  335. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_gpzy_em.py +0 -0
  336. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_gxl_lg.py +0 -0
  337. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_hist_em.py +0 -0
  338. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_hist_tx.py +0 -0
  339. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_hk_valuation_baidu.py +0 -0
  340. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_hot_xq.py +0 -0
  341. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_hsgt_em.py +0 -0
  342. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_hsgt_exchange_rate.py +0 -0
  343. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_hsgt_min_em.py +0 -0
  344. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_info.py +0 -0
  345. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_inner_trade_xq.py +0 -0
  346. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_irm_cninfo.py +0 -0
  347. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_jgdy_em.py +0 -0
  348. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_lh_yybpm.py +0 -0
  349. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_lhb_em.py +0 -0
  350. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_lhb_sina.py +0 -0
  351. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_margin_em.py +0 -0
  352. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_margin_sse.py +0 -0
  353. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_margin_szse.py +0 -0
  354. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_market_legu.py +0 -0
  355. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_pankou_em.py +0 -0
  356. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_qsjy_em.py +0 -0
  357. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_report_em.py +0 -0
  358. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_research_report_em.py +0 -0
  359. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_sns_sseinfo.py +0 -0
  360. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_sy_em.py +0 -0
  361. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_technology_ths.py +0 -0
  362. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_tfp_em.py +0 -0
  363. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_three_report_em.py +0 -0
  364. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_ttm_lyr.py +0 -0
  365. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_value_em.py +0 -0
  366. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_yjbb_em.py +0 -0
  367. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_yjyg_cninfo.py +0 -0
  368. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_yjyg_em.py +0 -0
  369. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_yzxdr_em.py +0 -0
  370. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_zdhtmx_em.py +0 -0
  371. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_zf_pg.py +0 -0
  372. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_zh_valuation_baidu.py +0 -0
  373. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_zh_vote_baidu.py +0 -0
  374. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/stock_ztb_em.py +0 -0
  375. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_feature/ths.js +0 -0
  376. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/__init__.py +0 -0
  377. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_basic_info_xq.py +0 -0
  378. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_finance_hk_em.py +0 -0
  379. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_finance_sina.py +0 -0
  380. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_finance_ths.py +0 -0
  381. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_finance_us_em.py +0 -0
  382. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_gbjg_em.py +0 -0
  383. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_hold.py +0 -0
  384. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_ipo_declare.py +0 -0
  385. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_kcb_detail_sse.py +0 -0
  386. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_kcb_sse.py +0 -0
  387. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_notice.py +0 -0
  388. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_profit_forecast_em.py +0 -0
  389. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_profit_forecast_hk_etnet.py +0 -0
  390. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_profit_forecast_ths.py +0 -0
  391. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_recommend.py +0 -0
  392. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_register_em.py +0 -0
  393. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_restricted_em.py +0 -0
  394. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_zygc.py +0 -0
  395. {akshare-1.17.71 → akshare-1.17.73}/akshare/stock_fundamental/stock_zyjs_ths.py +0 -0
  396. {akshare-1.17.71 → akshare-1.17.73}/akshare/tool/__init__.py +0 -0
  397. {akshare-1.17.71 → akshare-1.17.73}/akshare/tool/trade_date_hist.py +0 -0
  398. {akshare-1.17.71 → akshare-1.17.73}/akshare/utils/__init__.py +0 -0
  399. {akshare-1.17.71 → akshare-1.17.73}/akshare/utils/cons.py +0 -0
  400. {akshare-1.17.71 → akshare-1.17.73}/akshare/utils/context.py +0 -0
  401. {akshare-1.17.71 → akshare-1.17.73}/akshare/utils/demjson.py +0 -0
  402. {akshare-1.17.71 → akshare-1.17.73}/akshare/utils/func.py +0 -0
  403. {akshare-1.17.71 → akshare-1.17.73}/akshare/utils/multi_decrypt.py +0 -0
  404. {akshare-1.17.71 → akshare-1.17.73}/akshare/utils/token_process.py +0 -0
  405. {akshare-1.17.71 → akshare-1.17.73}/akshare/utils/tqdm.py +0 -0
  406. {akshare-1.17.71 → akshare-1.17.73}/akshare.egg-info/SOURCES.txt +0 -0
  407. {akshare-1.17.71 → akshare-1.17.73}/akshare.egg-info/dependency_links.txt +0 -0
  408. {akshare-1.17.71 → akshare-1.17.73}/akshare.egg-info/requires.txt +0 -0
  409. {akshare-1.17.71 → akshare-1.17.73}/akshare.egg-info/top_level.txt +0 -0
  410. {akshare-1.17.71 → akshare-1.17.73}/pyproject.toml +0 -0
  411. {akshare-1.17.71 → akshare-1.17.73}/setup.cfg +0 -0
  412. {akshare-1.17.71 → akshare-1.17.73}/setup.py +0 -0
  413. {akshare-1.17.71 → akshare-1.17.73}/tests/__init__.py +0 -0
  414. {akshare-1.17.71 → akshare-1.17.73}/tests/test_func.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: akshare
3
- Version: 1.17.71
3
+ Version: 1.17.73
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
@@ -3178,9 +3178,11 @@ amac_manager_cancelled_info # 中国证券投资基金业协会-信息公示-诚
3178
3178
  1.17.69 fix: fix fund_etf_hist_sina interface
3179
3179
  1.17.70 fix: fix macro_stock_finance interface
3180
3180
  1.17.71 fix: fix futures_inventory_99 interface
3181
+ 1.17.72 fix: fix futures_warehouse_receipt_dce interface
3182
+ 1.17.73 fix: fix get_receipt interface
3181
3183
  """
3182
3184
 
3183
- __version__ = "1.17.71"
3185
+ __version__ = "1.17.73"
3184
3186
  __author__ = "AKFamily"
3185
3187
 
3186
3188
  import sys
@@ -4868,7 +4870,7 @@ futures-warehouse-receipt
4868
4870
  """
4869
4871
  from akshare.futures.futures_warehouse_receipt import (
4870
4872
  futures_czce_warehouse_receipt,
4871
- futures_dce_warehouse_receipt,
4873
+ futures_warehouse_receipt_dce,
4872
4874
  futures_shfe_warehouse_receipt,
4873
4875
  futures_gfex_warehouse_receipt,
4874
4876
  )
@@ -524,7 +524,7 @@ def get_shfe_daily(date: str = "20220415") -> pd.DataFrame:
524
524
  return df
525
525
 
526
526
 
527
- def get_dce_daily(date: str = "20220308") -> pd.DataFrame:
527
+ def get_dce_daily(date: str = "20251027") -> pd.DataFrame:
528
528
  """
529
529
  大连商品交易所日交易数据
530
530
  http://www.dce.com.cn/dalianshangpin/xqsj/tjsj26/rtj/rxq/index.html
@@ -537,41 +537,42 @@ def get_dce_daily(date: str = "20220308") -> pd.DataFrame:
537
537
  if day.strftime("%Y%m%d") not in calendar:
538
538
  # warnings.warn("%s非交易日" % day.strftime("%Y%m%d"))
539
539
  return pd.DataFrame()
540
- url = "http://portal.dce.com.cn/publicweb/quotesdata/exportDayQuotesChData.html"
541
- headers = {
542
- "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,"
543
- "application/signed-exchange;v=b3;q=0.9",
544
- "Accept-Encoding": "gzip, deflate",
545
- "Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8",
546
- "Cache-Control": "no-cache",
547
- "Connection": "keep-alive",
548
- "Content-Length": "86",
549
- "Content-Type": "application/x-www-form-urlencoded",
550
- "Host": "www.dce.com.cn",
551
- "Origin": "http://portal.dce.com.cn",
552
- "Pragma": "no-cache",
553
- "Referer": "http://portal.dce.com.cn/publicweb/quotesdata/dayQuotesCh.html",
554
- "Upgrade-Insecure-Requests": "1",
555
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
556
- "Chrome/84.0.4147.105 Safari/537.36",
540
+ url = "http://www.dce.com.cn/dcereport/publicweb/dailystat/dayQuotes"
541
+ payload = {
542
+ "contractId": "",
543
+ "lang": "zh",
544
+ "optionSeries": "",
545
+ "statisticsType": "0",
546
+ "tradeDate": date,
547
+ "tradeType": "1",
548
+ "varietyId": "all",
557
549
  }
558
- params = {
559
- "dayQuotes.variety": "all",
560
- "dayQuotes.trade_type": "0",
561
- "year": date[:4],
562
- "month": str(int(date[4:6]) - 1),
563
- "day": date[6:],
564
- "exportFlag": "excel",
565
- }
566
- r = requests.post(url, data=params, headers=headers)
567
- data_df = pd.read_excel(BytesIO(r.content), header=1)
568
- data_df = data_df[~data_df["商品名称"].str.contains("小计")]
569
- data_df = data_df[~data_df["商品名称"].str.contains("总计")]
570
- data_df["variety"] = data_df["商品名称"].map(lambda x: cons.DCE_MAP[x])
571
- data_df["symbol"] = data_df["合约名称"]
572
- del data_df["商品名称"]
573
- del data_df["合约名称"]
574
- data_df.columns = [
550
+ r = requests.post(url, json=payload)
551
+ data_json = r.json()
552
+ temp_df = pd.DataFrame(data_json['data'])
553
+ temp_df.rename(columns={
554
+ "variety": "品种名称",
555
+ "contractId": "合约",
556
+ "open": "开盘价",
557
+ "high": "最高价",
558
+ "low": "最低价",
559
+ "close": "收盘价",
560
+ "lastClear": "前结算价",
561
+ "clearPrice": "结算价",
562
+ "diff": "涨跌",
563
+ "diff1": "涨跌1",
564
+ "volumn": "成交量",
565
+ "openInterest": "持仓量",
566
+ "diffI": "持仓量变化",
567
+ "turnover": "成交额",
568
+ }, inplace=True)
569
+ temp_df = temp_df[~temp_df["品种名称"].str.contains("小计")]
570
+ temp_df = temp_df[~temp_df["品种名称"].str.contains("总计")]
571
+ temp_df["variety"] = temp_df["品种名称"].map(lambda x: cons.DCE_MAP[x])
572
+ temp_df["symbol"] = temp_df["合约"]
573
+ del temp_df["品种名称"]
574
+ del temp_df["合约"]
575
+ temp_df.columns = [
575
576
  "open",
576
577
  "high",
577
578
  "low",
@@ -580,15 +581,24 @@ def get_dce_daily(date: str = "20220308") -> pd.DataFrame:
580
581
  "settle",
581
582
  "_",
582
583
  "_",
584
+ "_",
583
585
  "volume",
584
586
  "open_interest",
585
587
  "_",
586
588
  "turnover",
589
+ "_",
590
+ "_",
591
+ "_",
592
+ "_",
593
+ "_",
594
+ "_",
595
+ "_",
596
+ "_",
587
597
  "variety",
588
598
  "symbol",
589
599
  ]
590
- data_df["date"] = date
591
- data_df = data_df[
600
+ temp_df["date"] = date
601
+ temp_df = temp_df[
592
602
  [
593
603
  "symbol",
594
604
  "date",
@@ -604,8 +614,7 @@ def get_dce_daily(date: str = "20220308") -> pd.DataFrame:
604
614
  "variety",
605
615
  ]
606
616
  ]
607
- data_df = data_df.map(lambda x: x.replace(",", ""))
608
- data_df = data_df.astype(
617
+ temp_df = temp_df.astype(
609
618
  {
610
619
  "open": "float",
611
620
  "high": "float",
@@ -618,8 +627,8 @@ def get_dce_daily(date: str = "20220308") -> pd.DataFrame:
618
627
  "pre_settle": "float",
619
628
  }
620
629
  )
621
- data_df.reset_index(inplace=True, drop=True)
622
- return data_df
630
+ temp_df.reset_index(inplace=True, drop=True)
631
+ return temp_df
623
632
 
624
633
 
625
634
  def get_futures_daily(
@@ -29,10 +29,12 @@ def futures_czce_warehouse_receipt(date: str = "20200702") -> dict:
29
29
  :return: 指定日期的仓单日报数据
30
30
  :rtype: dict
31
31
  """
32
+ import urllib3
33
+ urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
32
34
  url = f"http://www.czce.com.cn/cn/DFSStaticFiles/Future/{date[:4]}/{date}/FutureDataWhsheet.xls"
33
35
  headers = {
34
36
  "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
35
- "Chrome/83.0.4103.116 Safari/537.36"
37
+ "Chrome/83.0.4103.116 Safari/537.36"
36
38
  }
37
39
  r = requests.get(url, verify=False, headers=headers)
38
40
  temp_df = pd.read_excel(BytesIO(r.content))
@@ -40,7 +42,7 @@ def futures_czce_warehouse_receipt(date: str = "20200702") -> dict:
40
42
  index_list.append(len(temp_df))
41
43
  big_dict = {}
42
44
  for inner_index in range(len(index_list) - 1):
43
- inner_df = temp_df[index_list[inner_index] : index_list[inner_index + 1]]
45
+ inner_df = temp_df[index_list[inner_index]: index_list[inner_index + 1]]
44
46
  inner_key = re.findall(r"[a-zA-Z]+", inner_df.iloc[0, 0])[0]
45
47
  inner_df = inner_df.iloc[1:, :]
46
48
  inner_df.dropna(axis=0, how="all", inplace=True)
@@ -52,7 +54,7 @@ def futures_czce_warehouse_receipt(date: str = "20200702") -> dict:
52
54
  return big_dict
53
55
 
54
56
 
55
- def futures_dce_warehouse_receipt(date: str = "20250929") -> dict:
57
+ def futures_warehouse_receipt_dce(date: str = "20251027") -> pd.DataFrame:
56
58
  """
57
59
  大连商品交易所-行情数据-统计数据-日统计-仓单日报
58
60
  http://www.dce.com.cn/dce/channel/list/187.html
@@ -61,35 +63,33 @@ def futures_dce_warehouse_receipt(date: str = "20250929") -> dict:
61
63
  :return: 指定日期的仓单日报数据
62
64
  :rtype: dict
63
65
  """
64
- url = "http://portal.dce.com.cn/publicweb/quotesdata/wbillWeeklyQuotes.html"
65
- headers = {
66
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
67
- "Chrome/83.0.4103.116 Safari/537.36"
68
- }
69
- params = {
66
+ url = "http://www.dce.com.cn/dcereport/publicweb/dailystat/wbillWeeklyQuotes"
67
+ payload = {
70
68
  "tradeDate": date,
71
69
  "varietyId": "all",
72
70
  }
73
- r = requests.post(url, params=params, headers=headers)
74
- temp_df = pd.read_html(StringIO(r.text))[0]
75
- index_list = temp_df[temp_df.iloc[:, 0].str.contains("小计") == 1].index.to_list()
76
- index_list.insert(0, 0)
77
- big_dict = {}
78
- for inner_index in range(len(index_list) - 1):
79
- if inner_index == 0:
80
- temp_index = 0
81
- else:
82
- temp_index = index_list[inner_index] + 1
83
- inner_df = temp_df[temp_index : index_list[inner_index + 1] + 1].copy()
84
- inner_key = inner_df.iloc[0, 0]
85
- inner_df.reset_index(inplace=True, drop=True)
86
- inner_df.ffill(inplace=True)
87
- # 填补 20240401 中开头没有品种的情况
88
- if date == "20240401":
89
- inner_df["品种"] = inner_df["品种"].fillna("玉米")
90
- inner_key = inner_df.iloc[0, 0]
91
- big_dict[inner_key] = inner_df
92
- return big_dict
71
+ r = requests.post(url, json=payload)
72
+ data_json = r.json()
73
+ temp_df = pd.DataFrame(data_json['data']['entityList'])
74
+ temp_df.rename(columns={
75
+ "variety": "品种名称",
76
+ "whAbbr": "仓库/分库",
77
+ "deliveryAbbr": "可选提货地点/分库-数量",
78
+ "lastWbillQty": "昨日仓单量(手)",
79
+ "wbillQty": "今日仓单量(手)",
80
+ "diff": "增减(手)",
81
+ "varietyOrder": "品种代码",
82
+ }, inplace=True)
83
+ temp_df = temp_df[[
84
+ "品种代码",
85
+ "品种名称",
86
+ "仓库/分库",
87
+ "可选提货地点/分库-数量",
88
+ "昨日仓单量(手)",
89
+ "今日仓单量(手)",
90
+ "增减(手)",
91
+ ]]
92
+ return temp_df
93
93
 
94
94
 
95
95
  def futures_shfe_warehouse_receipt(date: str = "20200702") -> dict:
@@ -103,7 +103,7 @@ def futures_shfe_warehouse_receipt(date: str = "20200702") -> dict:
103
103
  """
104
104
  headers = {
105
105
  "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
106
- "Chrome/83.0.4103.116 Safari/537.36"
106
+ "Chrome/83.0.4103.116 Safari/537.36"
107
107
  }
108
108
  url = f"https://www.shfe.com.cn/data/tradedata/future/dailydata/{date}dailystock.dat"
109
109
  if date >= "20140519":
@@ -124,7 +124,7 @@ def futures_shfe_warehouse_receipt(date: str = "20200702") -> dict:
124
124
  temp_df = pd.read_html(StringIO(r.text))[0]
125
125
  index_list = temp_df[
126
126
  temp_df.iloc[:, 3].str.contains("单位:") == 1
127
- ].index.to_list()
127
+ ].index.to_list()
128
128
  big_dict = {}
129
129
  for inner_index in range(len(index_list)):
130
130
  temp_index_start = index_list[inner_index]
@@ -157,7 +157,7 @@ def futures_gfex_warehouse_receipt(date: str = "20240122") -> dict:
157
157
  url = "http://www.gfex.com.cn/u/interfacesWebTdWbillWeeklyQuotes/loadList"
158
158
  headers = {
159
159
  "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
160
- "Chrome/83.0.4103.116 Safari/537.36"
160
+ "Chrome/83.0.4103.116 Safari/537.36"
161
161
  }
162
162
  payload = {"gen_date": date}
163
163
  r = requests.post(url=url, data=payload, headers=headers)
@@ -220,8 +220,8 @@ if __name__ == "__main__":
220
220
  czce_warehouse_receipt_df = futures_czce_warehouse_receipt(date="20151019")
221
221
  print(czce_warehouse_receipt_df)
222
222
 
223
- futures_dce_warehouse_receipt_df = futures_dce_warehouse_receipt(date="20251014")
224
- print(futures_dce_warehouse_receipt_df)
223
+ futures_warehouse_receipt_dce_df = futures_warehouse_receipt_dce(date="20251014")
224
+ print(futures_warehouse_receipt_dce_df)
225
225
 
226
226
  futures_shfe_warehouse_receipt_df = futures_shfe_warehouse_receipt(date="20200702")
227
227
  print(futures_shfe_warehouse_receipt_df)
@@ -37,7 +37,7 @@ shfe_20101029 = pd.DataFrame(
37
37
  def get_dce_receipt(date: str = None, vars_list: List = cons.contract_symbols):
38
38
  """
39
39
  大连商品交易所-注册仓单数据
40
-
40
+ http://www.dce.com.cn/dce/channel/list/187.html
41
41
  :param date: 开始日期: YYYY-MM-DD 或 YYYYMMDD 或 datetime.date对象, 为空时为当天
42
42
  :type date: str
43
43
  :param vars_list: 合约品种如 RB, AL等列表, 为空时为所有商品数据从 20060106开始,每周五更新仓单数据。直到20090407起,每交易日都更新仓单数据
@@ -51,24 +51,23 @@ def get_dce_receipt(date: str = None, vars_list: List = cons.contract_symbols):
51
51
  if date.strftime("%Y%m%d") not in calendar:
52
52
  warnings.warn(f"{date.strftime('%Y%m%d')}非交易日")
53
53
  return None
54
+ url = "http://www.dce.com.cn/dcereport/publicweb/dailystat/wbillWeeklyQuotes"
54
55
  payload = {
55
- "weekQuotes.variety": "all",
56
- "year": date.year,
57
- "month": date.month - 1, # 网站月份描述少 1 个月, 属于网站问题
58
- "day": date.day,
56
+ "tradeDate": date.strftime("%Y%m%d"),
57
+ "varietyId": "all",
59
58
  }
60
- data = pandas_read_html_link(
61
- cons.DCE_RECEIPT_URL, method="post", data=payload, headers=cons.dce_headers
62
- )[0]
59
+ r = requests.post(url, json=payload)
60
+ data_json = r.json()
61
+ temp_df = pd.DataFrame(data_json['data']['entityList'])
63
62
  records = pd.DataFrame()
64
- for x in data.to_dict(orient="records"):
65
- if isinstance(x["品种"], str):
66
- if x["品种"][-2:] == "小计":
67
- var = x["品种"][:-2]
63
+ for x in temp_df.to_dict(orient="records"):
64
+ if isinstance(x["variety"], str):
65
+ if x["variety"][-2:] == "小计":
66
+ var = x["variety"][:-2]
68
67
  temp_data = {
69
68
  "var": chinese_to_english(var),
70
- "receipt": int(x["今日仓单量"]),
71
- "receipt_chg": int(x["增减"]),
69
+ "receipt": int(x["wbillQty"]),
70
+ "receipt_chg": int(x["diff"]),
72
71
  "date": date.strftime("%Y%m%d"),
73
72
  }
74
73
  records = pd.concat([records, pd.DataFrame(temp_data, index=[0])])
@@ -110,7 +109,8 @@ def get_shfe_receipt_1(
110
109
  shfe_20101029["date"] = date
111
110
  return shfe_20101029
112
111
  elif date in ["20100416", "20130821"]:
113
- return warnings.warn("20100416、20130821交易所数据丢失")
112
+ print("20100416、20130821交易所数据丢失")
113
+ return pd.DataFrame()
114
114
  else:
115
115
  var_list = [
116
116
  "天然橡胶",
@@ -245,10 +245,10 @@ def get_czce_receipt_1(date: str = None, vars_list: List = cons.contract_symbols
245
245
  ends = [x for x in data.index if "总计" in str(data[0].tolist()[x])]
246
246
  for i in list(range(len(indexes))):
247
247
  if i != len(indexes) - 1:
248
- data_cut = data.loc[indexes[i] : ends[i], :]
248
+ data_cut = data.loc[indexes[i]: ends[i], :]
249
249
  data_cut = data_cut.fillna(method="pad")
250
250
  else:
251
- data_cut = data.loc[indexes[i] :, :]
251
+ data_cut = data.loc[indexes[i]:, :]
252
252
  data_cut = data_cut.fillna(method="pad")
253
253
  if "PTA" in data_cut[0].tolist()[0]:
254
254
  var = "TA"
@@ -347,7 +347,8 @@ def get_czce_receipt_3(
347
347
  :rtype: pandas.DataFrame
348
348
  """
349
349
  if not isinstance(vars_list, list):
350
- return warnings.warn("vars_list: 必须是列表")
350
+ print("vars_list: 必须是列表")
351
+ return pd.DataFrame()
351
352
  date = (
352
353
  cons.convert_date(date).strftime("%Y%m%d")
353
354
  if date is not None
@@ -355,7 +356,7 @@ def get_czce_receipt_3(
355
356
  )
356
357
  if date not in calendar:
357
358
  warnings.warn("%s非交易日" % date.strftime("%Y%m%d"))
358
- return None
359
+ return pd.DataFrame()
359
360
  url = f"http://www.czce.com.cn/cn/DFSStaticFiles/Future/{date[:4]}/{date}/FutureDataWhsheet.xls"
360
361
  r = requests_link(url, encoding="utf-8", headers=cons.shfe_headers)
361
362
  temp_df = pd.read_excel(BytesIO(r.content))
@@ -389,6 +390,7 @@ def get_czce_receipt_3(
389
390
  symbol_list = []
390
391
  receipt_list = []
391
392
  receipt_chg_list = []
393
+ records = pd.DataFrame()
392
394
  for page in range(len(range_list_one)):
393
395
  inner_df = temp_df[range_list_one[page] : range_list_two[page]]
394
396
  reg = re.compile(r"[A-Z]+")
@@ -600,5 +602,5 @@ def get_receipt(
600
602
 
601
603
 
602
604
  if __name__ == "__main__":
603
- get_receipt_df = get_receipt(start_date="20250805", end_date="20250806")
605
+ get_receipt_df = get_receipt(start_date="20251027", end_date="20251027")
604
606
  print(get_receipt_df)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: akshare
3
- Version: 1.17.71
3
+ Version: 1.17.73
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
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes