admin管理员组

文章数量:1535958

使用akshare可以很方便的获取同花顺行业列表,与每个行业对应的个股信息,流程如下:

  1. 使用ak.stock_board_industry_summary_ths()获取行业列表
  2. 循环行业列表,使用ak.stock_board_industry_cons_ths()获取行业对应的个股信息

官方文档请参考:https://akshare.akfamily.xyz/data/stock/stock.html#id332

示例代码

import os
import pandas as pd
import time
from tqdm import tqdm
import akshare as ak


class THSIndustry(object):
    """同花顺行业"""

    def __init__(self, concept_file):
        self.concept_file = concept_file

    def update(self):
        stock_industry_df = ak.stock_board_industry_summary_ths()  # 同花顺
        industry_list = []
        for concept_dict_data in tqdm(stock_industry_df.to_dict(orient="records"), desc="更新同花顺行业"):
            time.sleep(3)
            stock_board_concept_df = ak.stock_board_industry_cons_ths(symbol=concept_dict_data['板块'])
            stock_board_concept_df['行业'] = concept_dict_data['板块']
            [industry_list.append(_) for _ in stock_board_concept_df.to_dict(orient="records")]
        # 导出结果
        pd.DataFrame(industry_list).to_csv(self.concept_file)

    def get_industry_df(self):
        if not os.path.exists(self.concept_file):
            return None
        industry_df = pd.read_csv(self.concept_file, index_col=0)
        industry_df.reset_index(inplace=True, drop=True)
        return industry_df


def main():
    industry_info = THSIndustry("ths_concept.csv")
    industry_info.update() # 更新列表
    industry_df = industry_info.get_industry_df() # 获取行业全列表


if __name__ == '__main__':
    main()

运行上面的代码,最后的industry_df即为全行业信息及对应的个股:

本文标签: 同花顺行业Akshare