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写的贪吃蛇游戏例子
Jun 16 Python
Python实现的数据结构与算法之队列详解
Apr 22 Python
Python的字典和列表的使用中一些需要注意的地方
Apr 24 Python
python算法表示概念扫盲教程
Apr 13 Python
将TensorFlow的模型网络导出为单个文件的方法
Apr 23 Python
解决nohup重定向python输出到文件不成功的问题
May 11 Python
PyTorch预训练的实现
Sep 18 Python
Python3 main函数使用sys.argv传入多个参数的实现
Dec 25 Python
python实现随机加减法生成器
Feb 24 Python
python 计算概率密度、累计分布、逆函数的例子
Feb 25 Python
判断Threading.start新线程是否执行完毕的实例
May 02 Python
Python办公自动化之Excel(中)
May 24 Python
python疲劳驾驶困倦低头检测功能的实现
Python实现自动玩连连看的脚本分享
Apr 04 #Python
Python利用Turtle绘制哆啦A梦和小猪佩奇
Python必备技巧之函数的使用详解
Python批量解压&压缩文件夹的示例代码
Apr 04 #Python
Python调用腾讯API实现人脸身份证比对功能
Python字符串常规操作小结
You might like
PHP 数组遍历顺序理解
2009/09/09 PHP
Session保存到数据库的php类分享
2011/10/24 PHP
PHP批量删除、清除UTF-8文件BOM头的代码实例
2014/04/14 PHP
推荐10个提供免费PHP脚本下载的网站
2014/12/31 PHP
javascript显示隐藏层比较不错的方法分析
2008/09/30 Javascript
利用JQuery为搜索栏增加tag提示
2009/06/22 Javascript
js 时间函数应用加、减、比较、格式转换的示例代码
2013/08/23 Javascript
jQuery实现延迟跳转的方法
2015/06/05 Javascript
原生js实现图片层叠轮播切换效果
2016/02/02 Javascript
Bootstrap carousel轮转图的使用实例详解
2016/05/17 Javascript
Jquery根据浏览器窗口改变调整大小的方法
2017/02/07 Javascript
js实现功能比较全面的全选和多选
2017/03/02 Javascript
使用BootStrap实现标签切换原理解析
2017/03/14 Javascript
BootStrap selectpicker后台动态绑定数据的方法
2017/07/28 Javascript
一次Webpack配置文件的分离实战记录
2018/11/30 Javascript
JS实现动态添加外部js、css到head标签的方法
2019/06/05 Javascript
Vue向后台传数组数据,springboot接收vue传的数组数据实例
2020/11/12 Javascript
vue-cli4.0多环境配置变量与模式详解
2020/12/30 Vue.js
探究Python的Tornado框架对子域名和泛域名的支持
2015/05/02 Python
用Python将动态GIF图片倒放播放的方法
2016/11/02 Python
python顺序执行多个py文件的方法
2019/06/29 Python
python tkinter实现彩球碰撞屏保
2019/07/30 Python
通过Python实现一个简单的html页面
2020/05/16 Python
Python基于xlutils修改表格内容过程解析
2020/07/28 Python
Python实现定时监测网站运行状态的示例代码
2020/09/30 Python
PyQt5的QWebEngineView使用示例
2020/10/20 Python
Spartoo英国:欧洲最大的网上鞋店
2016/09/13 全球购物
全球知名的婚恋交友网站:Match.com
2017/01/05 全球购物
Abbacino官网:包、钱包和女士配饰
2019/04/15 全球购物
英国奢华护肤、美容和Spa品牌:Temple Spa
2019/11/02 全球购物
《听鱼说话》教学反思
2014/02/15 职场文书
房地产项目建议书
2014/03/12 职场文书
技术比武方案
2014/05/19 职场文书
纪念九一八事变演讲稿:青少年应树立远大理想
2014/09/14 职场文书
从贫穷到富有,是知识技能和学习力的差别
2019/08/20 职场文书
竞聘演讲报告:基本写作有哪些?附开头范文
2019/10/16 职场文书