Python采集股票数据并制作可视化柱状图


Posted in Python onApril 04, 2022

前言

嗨喽!大家好呀,这里是魔王~

雪球,聪明的投资者都在这里 - 4300万投资者都在用的投资社区,

沪深港美全球市场实时行情,股票基金债券免费资讯,与投资高手实战交流。

模块使用

requests >>> pip install requests (数据请求 第三方模块)

re # 正则表达式 去匹配提取数据

json

pandas

pyecharts

开发环境

Python 3.8 解释器

Pycharm 2021.2 版本

代码实现步骤

  • 发送请求 访问网站
  • 获取数据
  • 解析数据(提取数据)
  • 保存数据
  • 做柱状图 简单的可视化

代码

# 1. 发送请求 访问网站
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36'
}

url = 'https://xueqiu.com/service/v5/stock/screener/quote/list?page=1&size=30&order=desc&order_by=amount&exchange=CN&market=CN&type=sha&_=1641730868838'

response = requests.get(url=url, headers=headers)

# 2. 获取数据
json_data = response.json() 

# 3. 数据解析(筛选数据)
data_list = json_data['data']['list']
for data in data_list:
    data1 = data['symbol']
    data2 = data['name']
    data3 = data['current']
    data4 = data['chg']
    data5 = data['percent']
    data6 = data['current_year_percent']
    data7 = data['volume']
    data8 = data['amount']
    data9 = data['turnover_rate']
    data10 = data['pe_ttm']
    data11 = data['dividend_yield']
    data12 = data['market_capital']
    print(data1, data2, data3, data4, data5, data6, data7, data8, data9, data10, data11, data12)
    data_dict = {
        '股票代码': data1,
        '股票名称': data2,
        '当前价': data3,
        '涨跌额': data4,
        '涨跌幅': data5,
        '年初至今': data6,
        '成交量': data7,
        '成交额': data8,
        '换手率': data9,
        '市盈率(TTM)': data10,
        '股息率': data11,
        '市值': data12,
    }
    csv_write.writerow(data_dict)

4. 保存地址
file = open('data2.csv', mode='a', encoding='utf-8', newline='')
csv_write = csv.DictWriter(file, fieldnames=['股票代码','股票名称','当前价','涨跌额','涨跌幅','年初至今','成交量','成交额','换手率','市盈率(TTM)','股息率','市值'])
csv_write.writeheader()

运行效果

Python采集股票数据并制作可视化柱状图

Python采集股票数据并制作可视化柱状图

数据可视化

data_df = pd.read_csv('data2.csv')
df = data_df.dropna()
df1 = df[['股票名称', '成交量']]
df2 = df1.iloc[:20]
print(df2['股票名称'].values)
print(df2['成交量'].values)


c = (
    Bar()
        .add_xaxis(df2['股票名称'].values.tolist())
        .add_yaxis("股票成交量情况", df2['成交量'].values.tolist())
        .set_global_opts(
        title_opts=opts.TitleOpts(title="成交量图表 - Volume chart"),
        datazoom_opts=opts.DataZoomOpts(),
    )
    .render("data.html")
)

print('数据可视化结果完成,请在当前目录下查找打开 data.html 文件!')

Python采集股票数据并制作可视化柱状图

Python采集股票数据并制作可视化柱状图

以上就是Python采集股票数据并制作可视化柱状图的详细内容,更多关于Python采集股票数据的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
打印出python 当前全局变量和入口参数的所有属性
Jul 01 Python
python操作ie登陆土豆网的方法
May 09 Python
pymssql数据库操作MSSQL2005实例分析
May 25 Python
python+selenium打印当前页面的titl和url方法
Jun 22 Python
详解Python基础random模块随机数的生成
Mar 23 Python
树莓派采用socket方式文件传输(python)
Jun 22 Python
关于python导入模块import与常见的模块详解
Aug 28 Python
Python 词典(Dict) 加载与保存示例
Dec 06 Python
python pandas移动窗口函数rolling的用法
Feb 29 Python
python3安装OCR识别库tesserocr过程图解
Apr 02 Python
如何把外网python虚拟环境迁移到内网
May 18 Python
Python3 socket即时通讯脚本实现代码实例(threading多线程)
Jun 01 Python
python疲劳驾驶困倦低头检测功能的实现
Python实现自动玩连连看的脚本分享
Apr 04 #Python
Python利用Turtle绘制哆啦A梦和小猪佩奇
Python必备技巧之函数的使用详解
Python批量解压&压缩文件夹的示例代码
Apr 04 #Python
Python调用腾讯API实现人脸身份证比对功能
Python字符串常规操作小结
You might like
destoon实现调用图文新闻的方法
2014/08/21 PHP
php中smarty区域循环的方法
2015/06/11 PHP
ThinkPHP中使用Ueditor富文本编辑器
2015/09/02 PHP
PHP下 Mongodb 连接远程数据库的实例代码
2017/08/30 PHP
一个JavaScript继承的实现
2006/10/24 Javascript
javascript jQuery插件练习
2008/12/24 Javascript
JavaScript高级程序设计(第3版)学习笔记8 js函数(中)
2012/10/11 Javascript
js中reverse函数的用法详解
2013/12/26 Javascript
JavaScript实现的双向跨域插件分享
2015/01/31 Javascript
JS实现网页背景颜色与select框中颜色同时变化的方法
2015/02/27 Javascript
javascript发送短信验证码实现代码
2015/11/12 Javascript
jQuery 1.9.1源码分析系列(十五)动画处理之缓动动画核心Tween
2015/12/03 Javascript
JQuery 的跨域方法推荐_可跨任何网站
2016/05/18 Javascript
JS实现根据用户输入分钟进行倒计时功能
2016/11/14 Javascript
鼠标点击input,显示瞬间的边框颜色,对之修改与隐藏实例
2016/12/26 Javascript
js 概率计算(简单版)
2017/09/12 Javascript
vue实现动态列表点击各行换色的方法
2018/09/13 Javascript
深入理解Angularjs 脏值检测
2018/10/12 Javascript
原生js实现公告滚动效果
2021/01/10 Javascript
jQuery实现的3D版图片轮播示例【滑动轮播】
2019/01/18 jQuery
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
2020/02/24 Javascript
[01:36]DOTA2完美大师赛趣味视频之与队友相处的十万个技巧
2017/11/19 DOTA
从Python的源码来解析Python下的freeblock
2015/05/11 Python
python生成式的send()方法(详解)
2017/05/08 Python
基于python 字符编码的理解
2017/09/02 Python
详解Pytorch 使用Pytorch拟合多项式(多项式回归)
2018/05/24 Python
Python完成毫秒级抢淘宝大单功能
2019/06/06 Python
python super的使用方法及实例详解
2019/09/25 Python
python 字典的打印实现
2019/09/26 Python
python实现按键精灵找色点击功能教程,使用pywin32和Pillow库
2020/06/04 Python
Python Opencv轮廓常用操作代码实例解析
2020/09/01 Python
美国生日蛋糕店:Bake Me A Wish!
2017/02/08 全球购物
维珍澳洲航空官网:Virgin Australia
2017/09/08 全球购物
FLIR美国官网:热成像, 夜视和红外摄像系统
2018/07/13 全球购物
学习雷锋演讲稿
2014/05/10 职场文书
一个家长教育孩子的心得体会
2016/01/15 职场文书