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正则抓取新闻标题和链接的方法示例
Apr 24 Python
python中 logging的使用详解
Oct 25 Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
Jan 24 Python
使用Python对微信好友进行数据分析
Jun 27 Python
python实现桌面壁纸切换功能
Jan 21 Python
对Python3 * 和 ** 运算符详解
Feb 16 Python
django 捕获异常和日志系统过程详解
Jul 18 Python
python函数局部变量、全局变量、递归知识点总结
Nov 15 Python
TensorFlow Saver:保存和读取模型参数.ckpt实例
Feb 10 Python
Python实现猜年龄游戏代码实例
Mar 25 Python
python里的单引号和双引号的有什么作用
Jun 17 Python
如何利用python和DOS获取wifi密码
Mar 31 Python
python疲劳驾驶困倦低头检测功能的实现
Python实现自动玩连连看的脚本分享
Apr 04 #Python
Python利用Turtle绘制哆啦A梦和小猪佩奇
Python必备技巧之函数的使用详解
Python批量解压&压缩文件夹的示例代码
Apr 04 #Python
Python调用腾讯API实现人脸身份证比对功能
Python字符串常规操作小结
You might like
php中使用Imagick实现图像直方图的实现代码
2011/08/30 PHP
php gzip压缩输出的实现方法
2013/04/27 PHP
PHP图片处理之图片背景、画布操作
2014/11/19 PHP
smarty实现多级分类的方法
2014/12/05 PHP
PHP实现验证码校验功能
2017/11/16 PHP
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
2019/12/20 PHP
异步动态加载JS并运行(示例代码)
2013/12/13 Javascript
js中判断用户输入的值是否为空的简单实例
2013/12/23 Javascript
js实现通用的微信分享组件示例
2014/03/10 Javascript
javascript比较两个日期的先后示例代码
2014/12/31 Javascript
JavaScript实现同步于本地时间的动态时间显示方法
2015/02/02 Javascript
javascript常用的方法分享
2015/07/01 Javascript
基于cssSlidy.js插件实现响应式手机图片轮播效果
2016/08/30 Javascript
jQuery中animate的几种用法与注意事项
2016/12/12 Javascript
jQuery条件分页 代替离线查询(附代码)
2017/08/17 jQuery
React Native 使用Fetch发送网络请求的示例代码
2017/12/02 Javascript
vue数组对象排序的实现代码
2018/06/20 Javascript
解决vue中使用Axios调用接口时出现的ie数据处理问题
2018/08/13 Javascript
Python的Twisted框架上手前所必须了解的异步编程思想
2016/05/25 Python
异步任务队列Celery在Django中的使用方法
2018/06/07 Python
python flask搭建web应用教程
2019/11/19 Python
Python 根据数据模板创建shapefile的实现
2019/11/26 Python
Python结合Window计划任务监测邮件的示例代码
2020/08/05 Python
Python爬取微信小程序通用方法代码实例详解
2020/09/29 Python
自定义html标记替换html5新增元素
2008/10/17 HTML / CSS
SmartBuyGlasses美国官网:太阳眼镜和眼镜
2017/08/20 全球购物
在网上学习全世界最好的课程:Coursera
2017/11/07 全球购物
Perfume’s Club法国站:购买香水和化妆品
2019/05/02 全球购物
输入N,打印N*N矩阵
2012/02/20 面试题
工作表扬信的范文
2014/01/10 职场文书
给国外客户的邀请函
2014/01/30 职场文书
小学生综合素质评语
2014/04/23 职场文书
微观世界观后感
2015/06/10 职场文书
大学学习委员竞选稿
2015/11/20 职场文书
Python实现文本文件拆分写入到多个文本文件的方法
2021/04/18 Python
python 破解加密zip文件的密码
2021/04/22 Python