当前位置: 首页 > news >正文

股票?看我用python采集数据制作成交量图表

前言

嗨喽,大家好呀~这里是爱看美女的茜茜呐

开发环境 & 第三方模块:

  • 解释器版本: python 3.8

  • 代码编辑器: pycharm 2021.2

  • requests: pip install requests 爬虫

  • pyecharts: pip install pyecharts 数据分析

  • pandas: pip install pandas 数据分析

基本流程

一. 思路分析

采集什么数据 怎么采集

找到数据来源: 从network当中去找到数据所在的位置

二. 代码实现(正常情况下有四个步骤)

  1. 发送请求

  2. 获取数据

  3. 解析数据

  4. 保存数据

采集数据代码

导入模块

import requests     # 第三方模块
import csv

创建表格

f = open('股票.csv', mode='a', newline='', encoding='utf-8')
csv_writer = csv.writer(f)
csv_writer.writerow(['股票代码','股票名称','当前价','涨跌额','涨跌幅','年初至今','成交量','成交额','换手率','市盈率(TTM)','股息率','市值'])

伪装

headers = {# 用户身份信息'cookie': 's=bq119wflib; device_id=90ec0683f24e4d1dd28a383d87fa03c5; xq_a_token=df4b782b118f7f9cabab6989b39a24cb04685f95; xqat=df4b782b118f7f9cabab6989b39a24cb04685f95; xq_r_token=3ae1ada2a33de0f698daa53fb4e1b61edf335952; xq_id_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOi0xLCJpc3MiOiJ1YyIsImV4cCI6MTY3MjE4Njc1MSwiY3RtIjoxNjcwNTAxMjA5MTEyLCJjaWQiOiJkOWQwbjRBWnVwIn0.iuLASkwB6LkAYhG8X8HE-M7AM0n0QUULimW1C4bmkko-wwnPv8YgdakTC1Ju6TPQLjGhMqHuSXqiWdOqVIjy_OMEj9L_HScDot-7kn63uc2lZbEdGnjyF3sDrqGBCpocuxTTwuSFuQoQ1lL7ZWLYOcvz2pRgCw64I0zLZ9LogQU8rNP-a_1Nc91V8moONFqPWD5Lt3JxqcuyJbmb86OpfJZRycnh1Gjnl0Aj1ltGa4sNGSMXoY2iNM8NB56LLIp9dztEwExiRSWlWZifpl9ERTIIpHFBq6L2lSTRKqXKb0V3McmgwQ1X0_MdNdLAZaLZjSIIcQgBU26T8Z4YBZ39dA; u=511670501221348; Hm_lvt_1db88642e346389874251b5a1eded6e3=1667994737,1670480781,1670501222; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1670501922',# 防盗链'referer': 'https://****',# 浏览器的基本信息'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36'
}

多页采集

for page in range(1, 167):url = f'https://*****/v5/stock/screener/quote/list.json?page={page}&size=30&order=desc&orderby=percent&order_by=percent&market=CN&type=sh_sz'

发送请求

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

获取数据

    json_data = response.json()

解析数据 提取数据 把想要的内容取出来

    data_list = json_data['data']['list']# data_list[0]# data_list[1]for i in range(0, len(data_list)):symbol = data_list[i]['symbol']name = data_list[i]['name']current = data_list[i]['current']chg = data_list[i]['chg']percent = data_list[i]['percent']current_year_percent = data_list[i]['current_year_percent']volume = data_list[i]['volume']amount = data_list[i]['amount']turnover_rate = data_list[i]['turnover_rate']pe_ttm = data_list[i]['pe_ttm']dividend_yield = data_list[i]['dividend_yield']market_capital = data_list[i]['market_capital']print(symbol, name, current, chg, percent, current_year_percent, volume, amount, turnover_rate, pe_ttm, dividend_yield, market_capital)
  1. 保存数据
        csv_writer.writerow([symbol, name, current, chg, percent, current_year_percent, volume, amount, turnover_rate, pe_ttm, dividend_yield, market_capital])

括展小知识

  1. <Response [200]>: 请求成功

  2. 404: 访问不到资源

  3. 什么是json数据: 以 {}/[] 所包裹起来的数据 {"":"", "":""}

  4. .text: 字符串 文本内容

  5. .content: 二进制 图片/音频/视频

  6. .json(): 取出来的数据 本身就已经是Python里面的一个字典数据了

  7. 列表: []包裹的内容 [{},{},{},{},{},{},{}]

成交量图表

import pandas as pd         # 做表格数据处理模块 第三方的
from pyecharts.charts import Bar    # 可视化模块 第三方模块
from pyecharts import options as opts   # 可视化模块里面的设置模块(图表样式)# 1. 读取数据
df = pd.read_csv('股票.csv')
x = list(df['股票名称'].values)
y = list(df['成交量'].values)c = (Bar().add_xaxis(x[:10]).add_yaxis("成交额", y[:10]).set_global_opts(xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)),title_opts=opts.TitleOpts(title="Bar-旋转X轴标签", subtitle="解决标签名字过长的问题"),).render("成交量图表.html")
)
# c = (
#     Bar()
#     .add_xaxis(x[:10])
#     .add_yaxis('成交量情况', y[:10])
#     .add_yaxis('成交额情况', y2[:10])
#     .set_global_opts(
#         title_opts=opts.TitleOpts(title='成交量图表'),
#         datazoom_opts=opts.DataZoomOpts()
#     )
# )
# c.render('成交量图表.html')

尾语

感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

请添加图片描述

最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇

相关文章:

股票?看我用python采集数据制作成交量图表

前言 嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 开发环境 & 第三方模块: 解释器版本: python 3.8 代码编辑器: pycharm 2021.2 requests: pip install requests 爬虫 pyecharts: pip install pyecharts 数据分析 pandas: pip install pandas 数据分析 基本流…...

C++中的多态,以及多态的实现、以及实现多态的两个特例。

一、 多态是什么&#xff1f; 通俗点说&#xff0c;就是多种形态。具体点就是不同对象完成某种事情&#xff0c;会产生不一样的状态。 举个例子&#xff1a;就好比&#xff1a;买票的时候&#xff0c;普通人、学生、军人等等&#xff0c;他们买票有不同的结果&#xff0c;普通人…...

ESP32-C2系列开发板简介

C2是一个芯片采用4毫米x 4毫米封装&#xff0c;与272 kB内存。它运行框架&#xff0c;例如ESP-Jumpstart和ESP造雨者&#xff0c;同时它也运行ESP-IDF。ESP-IDF是Espressif面向嵌入式物联网设备的开源实时操作系统&#xff0c;受到了全球用户的信赖。它由支持Espressif以及所有…...

AI在狂飙,ChatGPT-4可直接在iPhone上使用啦

今天凌晨&#xff0c;OpenAI 正式在 App Store 推出了 ChatGPT 的 iOS app&#xff0c;瞬间冲上苹果商店免费榜第二名&#xff0c;效率榜第一名。 于是兴致勃勃的去下载体验了一番。整体不错&#xff0c;以后手机使用官方的 ChatGPT 更方便啦&#xff01;而且使用 GPT4 不再麻…...

【计算机操作系统学习资源汇总】

引言 做优秀资源的搬运工&#xff01;阅读经典&#xff0c;传承经典&#xff01; 每个人的水平和理解不同&#xff0c;因此总结的水平也不同&#xff0c;推荐阅读一手资源&#xff0c;有时间尽量啃书。 发现好的资源会持续更新… 看书的一点小建议 1. 《深入理解计算机系统》…...

吴恩达 x OpenAI Prompt Engineering教程中文笔记

Datawhale干货 作者&#xff1a;刘俊君&#xff0c;Datawhale成员 完整课程&#xff1a;《吴恩达ChatGPT最新课程》 &#x1f433;Reasons & Importance Important for research, discoveries, and advancement 对研究、发现和进步很重要 Accelerate the scientific resea…...

Everypixel: AI图片搜索引擎

【产品介绍】 Everypixel是一个基于人工智能的图片搜索引擎。可以搜索超过 50 个图片来源的优质的授权图库版权素材图片&#xff0c;还可以使用免费图案功能&#xff0c;找到适合自己需求的可定制无缝图案。 Everypixel利用深度学习和计算机视觉技术&#xff0c;为客户提供先进…...

IOS新建应用

一&#xff1a;Application App。普通app。Document App。打开是记事本类似App。Game。新建游戏相关app。RealityKit为新建一个打开摄像机&#xff0c;一个Ar立方体的应用。 SenceKit为有一架飞机旋转的游戏App。 SpirteKit为一个手指头按上会出一个手指特效的应用。 Metal为一…...

CMake学习笔记:搜索第三方库及头文件路径 find_package()命令

1、find_package命令基本介绍 在实际开发过程中&#xff0c;经常不可避免的会使用到第三方开源库&#xff0c;这些开源库可能是通过apt-get install 命令自动安装到系统目录&#xff0c;也可能是由我们自己下载库的源码然后通过编译安装到指定目录的。 不管哪种方式安装的库文…...

Vue3-黑马(一)

目录&#xff1a; &#xff08;1&#xff09;vue3-基础-环境准备 &#xff08;2&#xff09;vue3-基础-入门案例 &#xff08;3&#xff09;vue3-基础-main.ts &#xff08;1&#xff09;vue3-基础-环境准备 vue3的技术选型&#xff0c;它提供了两套API&#xff0c;一个是选…...

[组合数学]母函数与递推关系

文章目录 母函数---解决计数组合 球相同 盒子不同 不能是空 C n − 1 m − 1 \quad C_{n-1}^{m-1} Cn−1m−1​数的拆分 递推关系常系数线性齐次递推关系常系数线性非齐次递推关系汉诺塔递推关系 母函数—解决计数 普母函数—组合问题 指母函数—排列问题 f(x) ∑ i 1 n a i…...

opencv膨胀腐蚀

OpenCV 是一个开源的计算机视觉库&#xff0c;它包含了许多图像处理的功能&#xff0c;其中膨胀和腐蚀是两种常用的形态学操作。 膨胀&#xff08;Dilation&#xff09;&#xff1a;膨胀操作是将图像中的高亮区域&#xff08;白色像素&#xff09;扩张&#xff0c;从而填充低亮…...

ARM的读写内存指令与栈的应用

1.基础读写指令 写内存指令&#xff1a;STR MOV R1, #0xFF000000 MOV R2, #0x40000000 STR R1, [R2] 将R1寄存器中的数据写入到R2指向的内存空间 需注意&#xff0c;此命令是将R1中的数据写给R2所指向的内存空间&#xff0c;而不是直接把R1的数据赋给R2&#xff0c;R2寄存器…...

2022年平均工资出炉,IT行业又是第一

根据5月9日国家统计局最新资料显示&#xff0c;2022年&#xff0c;全国城镇非私营单位就业人员年平均工资为114029元&#xff0c;比上年增长6.7%&#xff0c;扣除通胀后实际增长4.6%。其中&#xff0c;行业间的差距相当明显。根据资料显示&#xff0c;2022年无论是在私营单位还…...

ov2640子设备核心操作详细分析

ov2640子设备核心操作详细分析 文章目录 ov2640子设备核心操作详细分析ov2640_subdev_core_ops核心操作获取寄存器值ov2640_g_register设置寄存器值ov2640_s_registeri2c_smbus_xferi2c_imx_xferi2c_smbus_xfer_emulatedi2c_transfer__i2c_transfer 设置ov2640的电源ov2640_s_p…...

MATLAB语句实现方阵性质的验证

系列文章目录 MATLAB绘图函数的相关介绍——海底测量、二维与三维图形绘制 MATLAB求函数极限的简单介绍 matlab系统环境思维导图 文章目录 系列文章目录 1. MATLAB语句验证方阵的六个性质如下 2. 六个性质的解释如下 3. 使用随机矩阵进行验证的代码示例如下 总结 前言 …...

使用Springboot AOP进行请求接口异常监控

常用注解 Aspect 切面类 Before 前置 AfterReturning 后置 Around 环绕 AfterThrowing 异常 切入点设置 execution(public * *(..)) 定义任意公共方法的执行 execution(* set*(..)) 定义任何一个以"set"开始的方法的执行 execution(* com.sys.service.UserService…...

【云原生|Kubernetes】05-Pod的存储卷(Volume)

【云原生Kubernetes】05-Pod的存储卷&#xff08;Volume) 文章目录 【云原生Kubernetes】05-Pod的存储卷&#xff08;Volume)简介Volume类型解析emptyDirHostPathgcePersistentDiskNFSiscsiglusterfsceph其他volume 简介 Volume 是Pod 中能够被多个容器访问的共享目录。 Kubern…...

Python实现数据结构

文章目录 一、Python实现数据结构1.1 python实现单向链表1.2 python实现单向循环链表1.3 python实现双向链表 一、Python实现数据结构 1.1 python实现单向链表 singleLinkedList.py class SingleNode:"""the node of single link list"""def …...

esp32CAM环境安装教程---串口驱动安装

前言 &#xff08;1&#xff09;本人安装好arduino 的ESP32环境之后&#xff0c; 发现一直下载不进去程序。一直说Cannot configure port, something went wrong. Original message: PermissionError。 &#xff08;2&#xff09;查阅了很多资料&#xff0c;用了各种办法&#…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

智能在线客服平台:数字化时代企业连接用户的 AI 中枢

随着互联网技术的飞速发展&#xff0c;消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁&#xff0c;不仅优化了客户体验&#xff0c;还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用&#xff0c;并…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

Neo4j 集群管理:原理、技术与最佳实践深度解析

Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...

用机器学习破解新能源领域的“弃风”难题

音乐发烧友深有体会&#xff0c;玩音乐的本质就是玩电网。火电声音偏暖&#xff0c;水电偏冷&#xff0c;风电偏空旷。至于太阳能发的电&#xff0c;则略显朦胧和单薄。 不知你是否有感觉&#xff0c;近两年家里的音响声音越来越冷&#xff0c;听起来越来越单薄&#xff1f; —…...

招商蛇口 | 执笔CID,启幕低密生活新境

作为中国城市生长的力量&#xff0c;招商蛇口以“美好生活承载者”为使命&#xff0c;深耕全球111座城市&#xff0c;以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子&#xff0c;招商蛇口始终与城市发展同频共振&#xff0c;以建筑诠释对土地与生活的…...