今天我在看东方财富官网的数据的时候发现东方财富是千股千评的数据提供了主力参与度信息,这个信息对于我们看股票,分析股票很有帮助,主力参与度越高,股票趋势越强,个股走势强。最近走势强的股票,主力参与度都大于70,这个数据值得我们分析。

我们提供的程序仅仅用于交流学习,坚持爬虫原则

本内容来源自己的微信公众号,数据分析与运用

需要程序的关注下面公众微信号,数据分析与运用,回复千股千评就可以了,直接运行代码

我们看一下数据。我们将数据处理过后,通过主力参与度进行数据排序。

经过对比发现,主力参与度高的股票,走势的很强,主力控盘力度大,市场关注度高,我们随便看应该数据比如天齐锂业。在数据处理中我们构造股票的链接,直接点击就链接到了东方财富数据。

比如我们在看一下通威股份,中环股份等

我们看一下程序的获取,我们提供了全部的数据,还有主力控盘力度,市场参与度,关注度等数据,爬取这个页面的数据。

我们看程序的效果,想学习爬虫的可以看这个文章

我们看程序运行的效果

我们点击全部数据,看一下效果,我加入了进度条。

我们看保存的数据,我构建了股票链接

我们看一下其他数据,比如历史评分。我们输入股票代码比如603260

程序绘制的股票,方便分析

程序代码

import pandas as pdimport jsonimport jsonpathimport requestsfrom bs4 import BeautifulSoupfrom xml import etreeimport tkinter as tkimport akshare as akfrom finta import TAimport matplotlib.pyplot as pltimport mplfinance as mpfimport osfrom  datetime import datetimefrom tqdm import tqdmimport PySimpleGUI as sgroot=tk.Tk()root.title('东方财富千股千评数据系统')root.geometry('600x500')menumode=tk.Menu(root)stock_pj=tk.Menu(menumode)menumode.add_cascade(label='东方财富千股千评数据系统',menu=stock_pj)def plot_kines_figure(df1=None):    '''    df1数据    '''    macd=TA.MACD(df1)    sar=TA.SAR(df1)    df1.rename(columns={'date':'Date','open':'Open','close':'Close','high':'High','low':'Low','volume':'Volume'},inplace=True)    #时间格式转换    plt.rcParams['font.family']='SimHei'    plt.rcParams['axes.unicode_minus']=False    df1['Date']=pd.to_datetime(df1['Date'])    #出现设置索引    df1.set_index(['Date'],inplace=True)    #设置股票颜    mc=mpf.make_marketcolors(up='r',down='g',edge='i',volume='i')        #设置系统    s=mpf.make_mpf_style(marketcolors=mc)    add_plot=[mpf.make_addplot(macd['MACD'],panel=1,title='MACD',color='r'),mpf.make_addplot(macd['SIGNAL'],panel=1,color='y'),    mpf.make_addplot(sar,panel=0,title='SAR',type='scatter')]    #绘制股票图,5,10,20日均线    mpf.plot(df1,type='candle',style=s,addplot=add_plot,volume=True)    plt.show()def get_all_stock_data():    data=pd.DataFrame()    for i in tqdm(range(1,11)):        url='https://datacenter-web.eastmoney.com/api/data/v1/get'        params={            'callback':'jQuery112307356860297982217_1656654358932',            'sortColumns':'SECURITY_CODE',            'sortTypes':'1',            #获取全部数据500            'pageSize':'500',            'pageNumber':'{}'.format(i),            'reportName':'RPT_DMSK_TS_STOCKNEW',            'quoteColumns':'f2~01~SECURITY_CODE~CLOSE_PRICE,f8~01~SECURITY_CODE~TURNOVERRATE,f3~01~SECURITY_CODE~CHANGE_RATE,f9~01~SECURITY_CODE~PE_DYNAMIC',            'quoteType':'0',            'columns':'ALL',            'filter':'' ,            'token':'894050c76af8597a853f5b408b759f5d'        }        res=requests.get(url=url,params=params)        text=res.text[42:len(res.text)-2]        json_text=json.loads(text)        df=pd.DataFrame(json_text['result']['data'])        columns=['股票市场代码','股票代码','股票类型代码','交易日期','股票名称','市值','流通股','非流通股',        '收盘价','涨跌幅','市场交易代码','换手率%','主力成本','市盈率','20日收盘价','60日收盘价',        '机构参与度','类型','主力流入','主力流出','买卖比例','主力买卖比例','比例','30日比例','50日比例',        '综合评分','上升位数','目前排名','关注指数','市场类型代码']        df.columns=columns        #选择一些主要的数据        df1=df[['股票代码','交易日期','股票名称','收盘价','涨跌幅','主力成本','机构参与度',        '综合评分','上升位数','目前排名','关注指数']]        #构造股票链接        href_data=[]        for i in df['股票代码']:            href='https://data.eastmoney.com/stockdata/{}.html'.format(i)            href_data.append(href)        df1['股票链接']=href_data        data=pd.concat([data,df1],ignore_index=True)    df_data=data.sort_values(by='机构参与度',ascending=False,ignore_index=True)    print(df_data)    df_data.to_excel(r'C:\Users\Administrator\Desktop\千股千评.xlsx')#机构参与度def get_stock_jgcyd () -> pd.DataFrame:    '''    机构参与度    '''    symbol=sg.popup_get_text('输入股票代码比如603260')    url = f"https://data.eastmoney.com/stockcomment/api/{symbol}.json"    r = requests.get(url)    data_json = r.json()    print(data_json)    df = pd.DataFrame([data_json['ApiResults']['zlkp']['jgcyd']['XData'], data_json['ApiResults']['zlkp']['jgcyd']['Ydata']['JGCYD']]).T    df.columns = ['date', 'value']    df['date'] = str(datetime.now().year) + '-' + df['date']    df['date'] = pd.to_datetime(df['date']).dt.date    df.sort_values(['date'], inplace=True)    df.reset_index(inplace=True, drop=True)    df['value'] = pd.to_numeric(df['value'])    print(df)    df.to_excel(r'C:\Users\Administrator\Desktop\千股千评.xlsx')    if symbol[0]=='0':        symbol='sz'+symbol    else:        symbol='sh'+symbol    kline_data=ak.stock_zh_a_daily(symbol=symbol,start_date='20210101')    plot_kines_figure(df1=kline_data)#历史评分def get_stock_ls_sore():    '''    历史评分    '''    symbol=sg.popup_get_text('输入股票代码比如603260')    url = f"https://data.eastmoney.com/stockcomment/api/{symbol}.json"    r = requests.get(url)    data = r.json()    df = pd.DataFrame([data['ApiResults']['zhpj']['HistoryScore']['XData'], data['ApiResults']['zhpj']['HistoryScore']['Ydata']['Score'], data['ApiResults']['zhpj']['HistoryScore']['Ydata']['Price']]).T    df.columns = ['日期', '评分', "股价"]    df['日期'] = str(datetime.now().year) + '-' + df['日期']    df['日期'] = pd.to_datetime(df['日期']).dt.date    df.sort_values(['日期'], inplace=True)    df.reset_index(inplace=True, drop=True)    df['评分'] = pd.to_numeric(df['评分'])    df['股价'] = pd.to_numeric(df['股价'])    print(df)    df.to_excel(r'C:\Users\Administrator\Desktop\千股千评.xlsx')    if symbol[0]=='0':        symbol='sz'+symbol    else:        symbol='sh'+symbol    kline_data=ak.stock_zh_a_daily(symbol=symbol,start_date='20210101')    plot_kines_figure(df1=kline_data)#用户关注def get_stock_yhgz():    '''    用户关注    '''    symbol=sg.popup_get_text('输入股票代码比如603260')    url = f"https://data.eastmoney.com/stockcomment/api/{symbol}.json"    r = requests.get(url)    data = r.json()    df = pd.DataFrame([data['ApiResults']['scrd']['focus'][1]['XData'], data['ApiResults']['scrd']['focus'][1]['Ydata']['StockFocus'], data['ApiResults']['scrd']['focus'][1]['Ydata']['ClosePrice']]).T    df.columns = ['日期', '用户关注指数', "收盘价"]    df['日期'] = str(datetime.now().year) + '-' + df['日期']    df['日期'] = pd.to_datetime(df['日期']).dt.date    df.sort_values(['日期'], inplace=True)    df.reset_index(inplace=True, drop=True)    df['用户关注指数'] = pd.to_numeric(df['用户关注指数'])    df['收盘价'] = pd.to_numeric(df['收盘价'])    print(df)    df.to_excel(r'C:\Users\Administrator\Desktop\千股千评.xlsx')    if symbol[0]=='0':        symbol='sz'+symbol    else:        symbol='sh'+symbol    kline_data=ak.stock_zh_a_daily(symbol=symbol,start_date='20210101')    plot_kines_figure(df1=kline_data)#市场参与意愿def stock_comment_detail_scrd_desire_em():    '''    市场参与意愿    '''    symbol=sg.popup_get_text('输入股票代码比如603260')    url = f"https://data.eastmoney.com/stockcomment/api/{symbol}.json"    r = requests.get(url)    data = r.json()    date_str = data['ApiResults']['scrd']['desire'][0][0]['UpdateTime'].split(" ")[0].replace("/", "-")    df = pd.DataFrame([data['ApiResults']['scrd']['desire'][1]['XData'], data['ApiResults']['scrd']['desire'][1]['Ydata']['MajorPeopleNumChg'], data['ApiResults']['scrd']['desire'][1]['Ydata']['PeopleNumChange'], data['ApiResults']['scrd']['desire'][1]['Ydata']['RetailPeopleNumChg']]).T    df.columns = ['日期时间', '大户', "全部", "散户"]    df['日期时间'] = date_str + ' ' + df['日期时间']    df['日期时间'] = pd.to_datetime(df['日期时间'])    df.sort_values(['日期时间'], inplace=True)    df.reset_index(inplace=True, drop=True)    df['大户'] = pd.to_numeric(df['大户'])    df['全部'] = pd.to_numeric(df['全部'])    df['散户'] = pd.to_numeric(df['散户'])    print(df)    df.to_excel(r'C:\Users\Administrator\Desktop\千股千评.xlsx')    if symbol[0]=='0':        symbol='sz'+symbol    else:        symbol='sh'+symbol    kline_data=ak.stock_zh_a_daily(symbol=symbol,start_date='20210101')    plot_kines_figure(df1=kline_data)#日度市场参与意愿def get_stock_rdcyyy():    '''    日度市场参与意愿    '''    symbol=sg.popup_get_text('输入股票代码比如603260')    url = f"https://data.eastmoney.com/stockcomment/api/{symbol}.json"    r = requests.get(url)    data = r.json()    date_str = data['ApiResults']['scrd']['desire'][0][0]['UpdateTime'].split(" ")[0].replace("/", "-")    df = pd.DataFrame([data['ApiResults']['scrd']['desire'][2]['XData'], data['ApiResults']['scrd']['desire'][2]['Ydata']['PeopleNumChg'], data['ApiResults']['scrd']['desire'][2]['Ydata']['TotalPeopleNumChange']]).T    df.columns = ['日期', '当日意愿下降', "五日累计意愿"]    df['日期'] = date_str[:4] + '-' + df['日期']    df['日期'] = pd.to_datetime(df['日期']).dt.date    df.sort_values(['日期'], inplace=True)    df.reset_index(inplace=True, drop=True)    df['当日意愿下降'] = pd.to_numeric(df['当日意愿下降'])    df['五日累计意愿'] = pd.to_numeric(df['五日累计意愿'])    print(df)    df.to_excel(r'C:\Users\Administrator\Desktop\千股千评.xlsx')    if symbol[0]=='0':        symbol='sz'+symbol    else:        symbol='sh'+symbol    kline_data=ak.stock_zh_a_daily(symbol=symbol,start_date='20210101')    plot_kines_figure(df1=kline_data)#市场成本def get_stock_sccb():    """    市场成本    """    symbol=sg.popup_get_text('输入股票代码比如603260')    url = f"https://data.eastmoney.com/stockcomment/api/{symbol}.json"    r = requests.get(url)    data = r.json()    date_str = data['ApiResults']['scrd']['cost'][0][0]['UpdateDate'].split(" ")[0].replace("/", "-")    df = pd.DataFrame([data['ApiResults']['scrd']['cost'][1]['XData'], data['ApiResults']['scrd']['cost'][1]['Ydata']['AvgBuyPrice'], data['ApiResults']['scrd']['cost'][1]['Ydata']['FiveDayAvgBuyPrice']]).T    df.columns = ['日期', '市场成本', "5日市场成本"]    df['日期'] = date_str[:4] + '-' + df['日期']    df['日期'] = pd.to_datetime(df['日期']).dt.date    df.sort_values(['日期'], inplace=True)    df.reset_index(inplace=True, drop=True)    df['市场成本'] = pd.to_numeric(df['市场成本'])    df['5日市场成本'] = pd.to_numeric(df['5日市场成本'])    print(df)    df.to_excel(r'C:\Users\Administrator\Desktop\千股千评.xlsx')    if symbol[0]=='0':        symbol='sz'+symbol    else:        symbol='sh'+symbol    kline_data=ak.stock_zh_a_daily(symbol=symbol,start_date='20210101')    plot_kines_figure(df1=kline_data)stock_pj.add_command(label='千股千评全部数据',command=get_all_stock_data)stock_pj.add_command(label='千股千评机构参与度数据',command=get_stock_jgcyd)stock_pj.add_command(label='千股千评历史评分数据',command=get_stock_ls_sore)stock_pj.add_command(label='千股千评用户关注数据',command=get_stock_yhgz)stock_pj.add_command(label='千股千评市场参与意愿',command=stock_comment_detail_scrd_desire_em)stock_pj.add_command(label='千股千评日度市场参与意愿数据',command=get_stock_rdcyyy)stock_pj.add_command(label='千股千评市场成本数据',command=get_stock_sccb)root['menu']=menumoderoot.mainloop()

东方财富----千股千评数据,附程序代码相关推荐

  1. 第12节 特色数据——千股千评

    文章目录 关于千股千评 相关接口 本节课任务 关于千股千评 千股千评是上海东方财富证券投资咨询有限公司针对近期某只个股交易,进出资金等情况作出的评分:切记不能作为交易的依据,仅作为参考指标! 关于东方 ...

  2. 自适应滤波器设计及matlab实现,自适应滤波器设计及Matlab实现附程序代码

    自适应滤波器设计及Matlab实现附程序代码 维纳自适应滤波器设计及 Matlab 实现摘 要本文从随机噪声的特性出发,分析了传统滤波和自适应滤波基本工作原理和性能,以及滤波技术的现状和发展前景.然后 ...

  3. 利用OpenSearch API检索和下载数据 附Python代码实例

    利用OpenSearch API检索和下载数据 附Python代码实例 在数据下载过程中,我们常常会需要下载非常多的数据文件,这时我们可以利用wget等软件或者编写数据下载脚本来实现数据下载的批处理. ...

  4. 智能窗帘传感器c语言程序,基于单片机的智能窗帘控制系统设计(附程序代码)

    基于单片机的智能窗帘控制系统设计(附程序代码)(论文18000字,程序代码) 摘要:二十一世纪初以来,科学技术不断发展,智能家居涌现于各家各户,人们越来越重视生活质量的提高.但是传统的手动开合窗帘耗时 ...

  5. 基于智能家居c语言程序代码,基于单片机的智能家居系统设计(附程序代码)

    基于单片机的智能家居系统设计(附程序代码)(任务书,开题报告,外文翻译,论文10000字) 摘要 基于近年来通信电子技术的高速发展,使得一些原来可望不可及的事关民生的技术变为可能,条件允许的情况下,人 ...

  6. 水塔水位测量c语言程序,基于51单片机水塔水箱水位检测系统控制器设计(附程序代码)...

    基于51单片机水塔水箱水位检测系统控制器设计(附程序代码)(任务书,开题报告,外文翻译,论文18000字) 摘  要 为了能实现水位监测与控制,以STC89C52作为核心控制芯片,进行了水位检测系统控 ...

  7. matalb中的wden函数_小波分析中MATLAB阈值获取函数及其应用附程序代码

    小波分析中MATLAB阈值获取函数及其应用附程序代码 1.小波分析中MATLAB阈值获取函数 MATLAB中实现阈值获取的函数有ddencmp.thselect.wbmpen和wwdcbm,下面对它们 ...

  8. matlab求阈值的函数,小波分析中matlab阈值获取函数及其应用附程序代码.doc

    小波分析中matlab阈值获取函数及其应用附程序代码.doc 1.小波分析中MATLAB阈值获取函数MATLAB中实现阈值获取的函数有DDENCMP.THSELECT.WBMPEN和WWDCBM,下面 ...

  9. matlab滤波器 代码,自适应滤波器设计及Matlab实现附程序代码整理版.doc

    自适应滤波器设计及Matlab实现附程序代码整理版.doc 维纳自适应?滤波器设计?及Matl?ab实现 摘 要 本文从随机?噪声的特性?出发,分析了传统?滤波和自适?应滤波基本?工作原理和?性能,以 ...

最新文章

  1. Android外设存储设备的访问及测试
  2. Requires: libstdc++.so.6(GLIBCXX_3.4.15)
  3. $.extend 的相关用法
  4. 如何应用AutoML加速图机器学习任务的处理?
  5. 扩展thinkphp5的redis类方法
  6. 清除浮动小记,兼容Ie6,7
  7. Ubuntu中安装FastDFS
  8. SmoothNLP 中文NLP文本处理工具 Python 实战示范
  9. javascript导入EXCEL数据
  10. php开放源码的时机商计 (CK-ERP) 发布 0.15.1 版
  11. python 什么时候后面要加冒号_Python中的每个if条件语句后面都要使用冒号。
  12. 11月国内网站流量统计:百度夺冠 360安全中心居亚
  13. jQuery实现点击行(tr)选中某列中CheckBox
  14. 较为容易理解的MUSIC算法DOA估计
  15. 极速办公(excel)字体如何改为斜体
  16. Matlab 音频信号处理
  17. 如何用keil5打开keil4工程
  18. CDN工作原理及淘宝双十一图片访问实战
  19. 程序员如何知道女朋友有没有偷看手机?
  20. InteractiveGovernor调频策略

热门文章

  1. 服务器硬盘怎么用到台机上,怎样在台机上使用服务器硬盘,scsi80针 爱问知识人...
  2. 荣耀x10max有在鸿蒙系统里吗,荣耀X10Max对比荣耀X10?怎么选?看完就明白了
  3. 在 Excel 中编写自定义函数——基础篇
  4. 千世的孽情之蝴蝶精灵
  5. ERDAS中Pleiades卫星数据的正射校正
  6. 京东云携手达达构建行业首个跨云双活平台 应对高并发需求
  7. 关于在苹果浏览器中new Date()函数兼容性问题
  8. 基于OpenGL的计算机图形机械零件车工建模模拟
  9. 实时渲染(RealTimeRendering-4thEdition)笔记——4变换(下)
  10. flask_email实现QQ邮箱发送邮件