
    fi                         d Z ddlZddlZdej        fdZddedej        fdZddedej        fdZddedej        fd	Z	ddedej        fd
Z
ddedej        fdZedk    r e            Z ee            ed          Z ee            ed          Z ee            e	d          Z ee            e
d          Z ee            ed          Z ee           dS dS )uY   
Date: 2023/7/8 17:15
Desc: 东方财富个股人气榜
https://guba.eastmoney.com/rank/
    Nreturnc                  "   d} dddddd}t          j        | |          }|                                }t          j        |d	                   }d
 |d         D             |d<   d                    |d                   dz    ddddd                    |d                   dz   d}d} t          j        | |          }|                                }t          j        |d	         d                   }g d|_        t          j        |d         d          |d<   t          j        |d         d          |d<   |d         |d         z  dz  |d<   |d         |d<   |d         |d<   |g d          }t          j        |d         d          |d<   |S )!u   
    东方财富-个股人气榜-人气榜
    https://guba.eastmoney.com/rank/
    :return: 人气榜
    :rtype: pandas.DataFrame
    z;https://emappdata.eastmoney.com/stockrank/getAllCurrentListappId01786e4c21-70dc-435a-93bb-38    d   )appIdglobalId
marketTypepageNopageSizejsondatac                 J    g | ] }d |v rd|dd         z   nd|dd         z   !S )SZz0.   Nz1. ).0items     J/usr/local/lib/python3.11/dist-packages/akshare/stock/stock_hot_rank_em.py
<listcomp>z%stock_hot_rank_em.<locals>.<listcomp>    sO        !%	DH)d122h2F      scmark,z?v=08926209912590994 f057cbcbce2a86e2866ab8877db1d0592zf14,f3,f12,f2z,?v=08926209912590994)utflttinvtfieldssecidsz/https://push2.eastmoney.com/api/qt/ulist.np/get)paramsdiff)	   最新价	   涨跌幅   代码   股票名称r'   coerceerrorsr(   	   涨跌额rk   当前排名r)   )r0   r)   r*   r'   r.   r(   )	requestspostr   pd	DataFramejoingetcolumns
to_numeric)urlpayloadr	data_jsontemp_rank_dfr%   temp_dfs          r   stock_hot_rank_emr?      s    HC0 G 	c(((AI<	& 122L  &  L HH\&!""%;;;0!((</003JJ F <CS(((AIl9V,V455GJJJGO=)=hOOOGK=)=hOOOGK";/'+2FFLGK*40GN$T*GH	
 	
 	
	G !mGN,CHUUUGNNr   SZ000665symbolc                    d}ddd| dd}t          j        ||          }|                                }t          j        |d                   }| |d	<   g d
|_        |g d
         }d}t          j        ||          }|                                }t          j        |d                   d         j                            d                              t                    dz  |d<   t          j        |d                   d         j                            d                              t                    dz  |d<   |
                    dgd           |S )u  
    东方财富-个股人气榜-历史趋势及粉丝特征
    https://guba.eastmoney.com/rank/stock?code=000665
    :param symbol: 带市场表示的证券代码
    :type symbol: str
    :return: 个股的历史趋势及粉丝特征
    :rtype: pandas.DataFrame
    z4https://emappdata.eastmoney.com/stockrank/getHisListr   r   r   5)r
   r   r   srcSecurityCodeyearTyper   r      证券代码)   时间   排名rF   z;https://emappdata.eastmoney.com/stockrank/getHisProfileList
newUidRate%r	   u   新晋粉丝
oldUidRateu   铁杆粉丝rG   Tinplace)r1   r2   r   r3   r4   r7   strstripastypefloatsort_values)rA   url_rankr:   r;   r<   r>   
url_follows          r   stock_hot_rank_detail_emrU   D   sZ    FH0! G 	hW---AIl9V,--G$GN:::GO:::;GNJjw///AI
Yv&''59??DDKKERRUXX N 	Yv&''59??DDKKERRUXX N 
D111Nr   c                     d}ddd| d}t          j        ||          }|                                }t          j        |d                   }dd	g|_        |S )
u   
    东方财富-个股人气榜-实时变动
    https://guba.eastmoney.com/rank/stock?code=000665
    :param symbol: 带市场表示的证券代码
    :type symbol: str
    :return: 实时变动
    :rtype: pandas.DataFrame
    z8https://emappdata.eastmoney.com/stockrank/getCurrentListr   r   r   r
   r   r   rD   r   r   rG   rH   r1   r2   r   r3   r4   r7   rA   r9   r:   r;   r<   r>   s         r   !stock_hot_rank_detail_realtime_emrZ   i   sj     EC0!	 G 	c(((AIl9V,--G*GONr   c                     d}dd| d}t          j        ||          }|                                }t          j        |d                   }|d= g d|_        |S )	u   
    东方财富-个股人气榜-热门关键词
    https://guba.eastmoney.com/rank/stock?code=000665
    :param symbol: 带市场表示的证券代码
    :type symbol: str
    :return: 热门关键词
    :rtype: pandas.DataFrame
    z=https://emappdata.eastmoney.com/stockrank/getHotStockRankListr   r   r
   r   rD   r   r   flag)rG      股票代码u   概念名称u   概念代码u   热度rX   rY   s         r   stock_hot_keyword_emr_      so     JC0! G
 	c(((AIl9V,--GZZZGONr   c                     d}ddd| d}t          j        ||          }|                                }t          j                            |d         d	          }|                    d
           ddg|_        |S )u   
    东方财富-个股人气榜-最新排名
    https://guba.eastmoney.com/rank/stock?code=000665
    :param symbol: 带市场表示的证券代码
    :type symbol: str
    :return: 最新排名
    :rtype: pandas.DataFrame
    z:https://emappdata.eastmoney.com/stockrank/getCurrentLatestr   r   r   rW   r   r   index)orientTrL   r   value)r1   r2   r   r3   r4   	from_dictreset_indexr7   rY   s         r   stock_hot_rank_latest_emrf      s     GC0!	 G 	c(((AIl$$Yv%6w$GGG%%%w'GONr   c                 ^   d}dd| d}t          j        ||          }|                                }t          j                            |d                   }g d|_        |g d         }|d	         j                            d
          |d	<   t          j	        |d	         d          |d	<   |S )u   
    东方财富-个股人气榜-相关股票
    https://guba.eastmoney.com/rank/stock?code=000665
    :param symbol: 带市场表示的证券代码
    :type symbol: str
    :return: 相关股票
    :rtype: pandas.DataFrame
    z@https://emappdata.eastmoney.com/stockrank/getFollowStockRankListr   r   r\   r   r   )rG   -r^   rh      相关股票代码r(   rh   )rG   r^   ri   r(   r(   rJ   r+   r,   )
r1   r2   r   r3   r4   rd   r7   rN   rO   r8   rY   s         r   stock_hot_rank_relate_emrj      s     MC0! G
 	c(((AIl$$Yv%677GbbbGOSSSTG";/399#>>GK=)=hOOOGKNr   __main__SZ871245)rA   )r@   )__doc__pandasr3   r1   r4   r?   rN   rU   rZ   r_   rf   rj   __name__stock_hot_rank_em_dfprintstock_hot_rank_detail_em_df$stock_hot_rank_detail_realtime_em_dfstock_hot_keyword_em_dfstock_hot_rank_latest_em_dfstock_hot_rank_relate_em_dfr   r   r   <module>rw      s        42< 4 4 4 4n" "S "", " " " "J c 2<    .  bl    . S ",    0 S ",    2 z,,..	E
":":*"M"M"M	E
%&&&+L+L, , ,( 
E
.///22*EEE	E
!"""":":*"M"M"M	E
%&&&":":*"M"M"M	E
%&&&&&' r   