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内置函数的用法实例教程
Sep 08 Python
Python实现登录人人网并抓取新鲜事的方法
May 11 Python
Python while 循环使用的简单实例
Jun 08 Python
Python爬虫:通过关键字爬取百度图片
Feb 17 Python
python消费kafka数据批量插入到es的方法
Dec 27 Python
scrapy-redis源码分析之发送POST请求详解
May 15 Python
使用Python实现文字转语音并生成wav文件的例子
Aug 08 Python
python进程池实现的多进程文件夹copy器完整示例
Nov 27 Python
np.random.seed() 的使用详解
Jan 14 Python
python爬取王者荣耀全皮肤的简单实现代码
Jan 31 Python
Python爬虫获取豆瓣电影并写入excel
Jul 31 Python
对Keras自带Loss Function的深入研究
May 25 Python
python疲劳驾驶困倦低头检测功能的实现
Python实现自动玩连连看的脚本分享
Apr 04 #Python
Python利用Turtle绘制哆啦A梦和小猪佩奇
Python必备技巧之函数的使用详解
Python批量解压&压缩文件夹的示例代码
Apr 04 #Python
Python调用腾讯API实现人脸身份证比对功能
Python字符串常规操作小结
You might like
提取HTML标签
2006/10/09 PHP
php下使用curl模拟用户登陆的代码
2010/09/10 PHP
php基础学习之变量的使用
2011/06/09 PHP
php基于base64解码图片与加密图片还原实例
2014/11/03 PHP
PHP7.1新功能之Nullable Type用法分析
2016/09/26 PHP
php set_include_path函数设置 include_path 配置选项
2016/10/30 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
document.getElementById介绍
2011/09/13 Javascript
使用documentElement正确取得当前可见区域的大小
2014/07/25 Javascript
jquery处理json对象
2014/11/03 Javascript
JavaScript实现N皇后问题算法谜题解答
2014/12/29 Javascript
jQuery获得字体颜色16位码的方法
2016/02/20 Javascript
node.js中路由,中间件,ge请求和post请求的参数详解
2017/12/26 Javascript
理解Koa2中的async&await的用法
2018/02/05 Javascript
JS中超越现实的匿名函数用法实例分析
2019/06/21 Javascript
原生JavaScript实现拖动校验功能
2020/09/29 Javascript
解决vscode进行vue格式化,会自动补分号和双引号的问题
2020/10/26 Javascript
编写v-for循环的技巧汇总
2020/12/01 Javascript
[02:51]2014DOTA2国际邀请赛 IG战队官方纪录片
2014/07/21 DOTA
[01:02:46]VGJ.S vs NB 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python数据结构与算法之常见的分配排序法示例【桶排序与基数排序】
2017/12/15 Python
Python实现的三层BP神经网络算法示例
2018/02/07 Python
NumPy排序的实现
2020/01/21 Python
Python操作Excel工作簿的示例代码(\*.xlsx)
2020/03/23 Python
python中JWT用户认证的实现
2020/05/18 Python
CSS3动画:5种预载动画效果实例
2017/04/05 HTML / CSS
HTML5本地存储之Web Storage应用介绍
2013/01/06 HTML / CSS
HTML5中新标签和常用标签详解
2014/03/07 HTML / CSS
加拿大建筑和装修专家:Reno-Depot
2017/12/21 全球购物
.NET程序员的数据库面试题
2012/10/10 面试题
资料员岗位职责
2013/11/17 职场文书
党性教育心得体会
2014/09/03 职场文书
小学三八妇女节活动总结
2015/02/06 职场文书
2015年行政助理工作总结
2015/04/30 职场文书
MongoDB数据库常用的10条操作命令
2021/06/18 MongoDB
pytorch中的torch.nn.Conv2d()函数图文详解
2022/02/28 Python