Python采集wangyi财经数据信息,做个可视化小案例

前言

2022年全球股市普跌,你亏了多少钱?

亏多少我也不知道,我只是想着来采集数据,做个可视化小案例来玩玩

在这里插入图片描述
话不多说,咱就直接开始吧

开发环境

  • 解释器版本: python 3.8
  • 代码编辑器: pycharm 2021.2
  • requests: pip install requests
  • pandas: pip install pandas
  • pyecharts: pip install pyecharts

爬虫实现步骤

一. 思路分析

  1. 需要采集什么数据?
    股票信息
  2. 数据在哪里?
    通过 f12 打开 network(网络面板) 记录网页当中的数据资源的 抓包分析

二. 代码实现

  1. 发送请求 通过代码的方式访问网站
  2. 获取数据
  3. 解析数据 提取数据 把想要的留下来
  4. 保存数据

代码展示

模块准备

import requests     # 发送请求
import csv

1. 发送请求

所有 源码 点击 此处 领取 即可

response = requests.get(url=url)

2. 获取数据

.text:    获取文本内容
.content: 获取二进制数据 (图片/音频/视频)
.json():  {}所包裹的数据 .json()取值 解析数据就会更方便 更简单 字典
json_data = response.json()

3. 解析数据

'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:309488165
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
 list = json_data['list']
    for i in range(0, len(list)):
        CODE = list[i]['CODE']
        SNAME = list[i]['SNAME']
        PRICE = list[i]['PRICE']
        PERCENT = list[i]['PERCENT']
        UPDOWN = list[i]['UPDOWN']
        FIVE_MINUTE = list[i]['FIVE_MINUTE']
        OPEN = list[i]['OPEN']
        YESTCLOSE = list[i]['YESTCLOSE']
        HIGH = list[i]['HIGH']
        LOW = list[i]['LOW']
        VOLUME = list[i]['VOLUME']
        TURNOVER = list[i]['TURNOVER']
        HS = list[i]['HS']
        try:
            LB = list[i]['LB']
        except:
            LB = ''
        WB = list[i]['WB']
        ZF = list[i]['ZF']
        try:
            PE = list[i]['PE']
        except:
            PE = ''
        MCAP = list[i]['MCAP']
        TCAP = list[i]['TCAP']
        MFSUM = list[i]['MFSUM']
        MFRATIO2 = list[i]['MFRATIO']['MFRATIO2']
        MFRATIO10 = list[i]['MFRATIO']['MFRATIO10']
        print(CODE, SNAME, PRICE, PERCENT, UPDOWN, FIVE_MINUTE, OPEN, YESTCLOSE, HIGH, LOW, VOLUME, TURNOVER, HS, LB, WB, ZF, PE, MCAP, TCAP, MFSUM, MFRATIO2, MFRATIO10)

4. 保存数据

with open('财经.csv', mode='a', newline='', encoding='utf-8') as f:
    csv_writer = csv.writer(f)
    csv_writer.writerow([CODE, SNAME, PRICE, PERCENT, UPDOWN, FIVE_MINUTE, OPEN, YESTCLOSE, HIGH, LOW, VOLUME, TURNOVER, HS, LB, WB, ZF, PE, MCAP, TCAP, MFSUM, MFRATIO2, MFRATIO10])

可视化代码

1. 读取数据

对此还有疑问的【点击这里】或者文章末尾名片

df = pd.read_csv('网易财经.csv')

2. 准备数据

名称 成交量取出来 转成列表

x = list(df['名称'].values)
y = df['成交量'].values.tolist()

3. 开始绘图

c = (
    Bar()
    .add_xaxis(x[:10])      # x轴数据
    .add_yaxis('成交量情况', y[:10]) # y轴数据
    .set_global_opts(
        title_opts=opts.TitleOpts(title='成交量图表'),   # 设置图表标题
        datazoom_opts=opts.DataZoomOpts()   # 数据移动轴
    )
)
# 生成 可视化的文件
c.render('成交量图表.html')

可视化效果展示

在这里插入图片描述

最后

朋友们学习python,有时候不知道怎么学,从哪里开始学。掌握了基本的一些语法或者做了两个案例后,不知道下一步怎么走,不知道如何去学习更加高深的知识。
那么对于这些朋友们,我准备了大量的免费视频教程,PDF电子书籍,以及源代码!直接在文末名片自取即可哦!

今天的分享到这里就结束了

顺便给大家推荐一些Python视频教程,希望对大家有所帮助:

Python零基础教学合集

对文章有问题的,或者有其他关于python的问题,可以在评论区留言或者私信我哦
觉得我分享的文章不错的话,可以关注一下我,或者给文章点赞(/≧▽≦)/

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值