Python财经股票数据获取, 保存表格文件

news2024/9/25 23:12:42

目录标题

      • 前言
      • 环境使用:
      • 模块使用]:
      • 代码展示
      • 尾语

前言

嗨喽~大家好呀,这里是魔王呐 ❤ ~!

环境使用:

  • Python 3.8 解释器

  • Pycharm 编辑器

模块使用]:

  • import requests —> 数据请求模块 pip install requests

  • import csv

第三方模块安装:

win + R 输入cmd 输入安装命令 pip install 模块名 (如果你觉得安装速度比较慢, 你可以切换国内镜像源)

python资料、源码、教程\福利皆: 点击此处跳转文末名片获取

代码展示

# 导入数据请求模块
import requests
# 导入格式化输出模块
from pprint import pprint
# 导入csv
import csv
# 导入pandas
import pandas as pd
f = open('data.csv', mode='w', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=[
    '股票名称',
    '发行量(万)',
    '发行价',
    '发行后每股净资产',
    '首日开盘价',
    '首日涨跌幅',
    '首日换手率',
    '上市后涨跌幅',
    '市盈率(TTM)',
    '市净率',
    '当前价',
    '今日涨跌幅',
    '每签获利',
])
csv_writer.writeheader()
  """
1. 发送请求, 模拟浏览器对于url地址发送请求
  - 请求链接: 比较长
    分段写: ? 前面链接 ? 后请求参数
批量替换:
    ctrl + R 勾选.* 使用正则命令进行批量替换
    (.*?): (.*)
    '$1': '$2',
模拟浏览器:
    请求失败, 被识别是爬虫程序
     """

多页采集

for page in range(1, 11):

请求链接

    url = 'https://****/v5/stock/preipo/cn/query.json'

请求参数 字典数据类型

    data = {
        'page': page,
        'size': '30',
        'order': 'desc',
        'order_by': 'list_date',
        'type': 'quote',
    }

模拟浏览器

    headers = {
        # Cookie 用户信息
        'Cookie': 'device_id=2fd33de446466b8053638f07d480b33f; s=d613bsv82e; xq_a_token=57b2a0b86ca3e943ee1ffc69509952639be342b9; xq_r_token=59c1392434fb1959820e4323bb26fa31dd012ea4; xq_id_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOi0xLCJpc3MiOiJ1YyIsImV4cCI6MTY5MDMzMTY5OCwiY3RtIjoxNjg3OTQ5MzMzNzM2LCJjaWQiOiJkOWQwbjRBWnVwIn0.c5xOaPy5EzJVIttd0qCKFctugs7l_86SB1DaHR5Qagnhc3eyUHFMnE_ZLaQ3oJC2CCirhdTkYjxEUQfC_FZ2igeSw_frxediYuhf8Bd8BWVU6oPRhSvJTADXtsYH96XXD5X0c8AslHhaw55O4FkXuaTgqJFSWRb-eVetp5Q64Chjk7pL24XrJtNpv6epPLf4JVvWSRNuoRKM43SRSZp4a0SItsuAs-0nC9jPHbPa-oz46Ay-LEfyyAnv9DIyiUmHna25bS7yAcKtt6J_BudRJjuT_iFpn1JRV85pqDKYXtbI60cFtYsRvdHAO-KYexB6nWK9uMCfPEHZE_q_R1BbWQ; u=531687949381081; Hm_lvt_1db88642e346389874251b5a1eded6e3=1687949381; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1687949381',
        # User-Agent 用户代理
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'
    }
    # 发送请求 --> <Response [403]> 请求失败了
    response = requests.get(url, params=data, headers=headers)
"""
2. 获取数据, 获取服务器返回响应数据
    response.json() 获取响应json数据 <字典数据类型>

3. 解析数据, 提取我们想要的数据内容
    字典取值 --> 键值对取值
"""
    info = []
    # for循环遍历
    for index in response.json()['data']['items']:
        dit = {
            '股票名称': index['name'],
            '发行量(万)': index['actissqty'],
            '发行价': index['iss_price'],
            '发行后每股净资产': index['napsaft'],
            '首日开盘价': index['first_open_price'],
            '首日涨跌幅': index['first_percent'],
            '首日换手率': index['first_turnrate'],
            '上市后涨跌幅': index['listed_percent'],
            '市盈率(TTM)': index['pe_ttm'],
            '市净率': index['pb'],
            '当前价': index['current'],
            '今日涨跌幅': index['percent'],
            '每签获利': index['stock_income'],
        }
        info.append(dit)
        csv_writer.writerow(dit)
        print(dit)
import requests
import datetime
import csv
f = open('data1.csv', mode='w', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=[

])
csv_writer.writeheader()
url = 'https://******/v5/stock/chart/minute.json?symbol=SZ301378&period=1d'
headers = {
    'Cookie':'device_id=2fd33de446466b8053638f07d480b33f; s=d613bsv82e; xq_a_token=57b2a0b86ca3e943ee1ffc69509952639be342b9; xq_r_token=59c1392434fb1959820e4323bb26fa31dd012ea4; xq_id_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOi0xLCJpc3MiOiJ1YyIsImV4cCI6MTY5MDMzMTY5OCwiY3RtIjoxNjg3OTQ5MzMzNzM2LCJjaWQiOiJkOWQwbjRBWnVwIn0.c5xOaPy5EzJVIttd0qCKFctugs7l_86SB1DaHR5Qagnhc3eyUHFMnE_ZLaQ3oJC2CCirhdTkYjxEUQfC_FZ2igeSw_frxediYuhf8Bd8BWVU6oPRhSvJTADXtsYH96XXD5X0c8AslHhaw55O4FkXuaTgqJFSWRb-eVetp5Q64Chjk7pL24XrJtNpv6epPLf4JVvWSRNuoRKM43SRSZp4a0SItsuAs-0nC9jPHbPa-oz46Ay-LEfyyAnv9DIyiUmHna25bS7yAcKtt6J_BudRJjuT_iFpn1JRV85pqDKYXtbI60cFtYsRvdHAO-KYexB6nWK9uMCfPEHZE_q_R1BbWQ; u=531687949381081; Hm_lvt_1db88642e346389874251b5a1eded6e3=1687949381; is_overseas=0; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1687956046',
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'
}
response = requests.get(url, headers=headers)
for index in response.json()['data']['items']:
    timestamp = int(str(index['timestamp'])[:-3])
    dt = datetime.datetime.fromtimestamp(timestamp)
    print(dt)
    dit = {
        '时间': dt,
        '最新': index['current'],
        '涨跌幅': index['percent'],
        '涨跌额': index['chg'],
        '均价': index['avg_price'],
        '最高': index['high'],
        '最低': index['low'],
        '成交额': str(index['volume'])[:-2],
    }
    print(dit)

尾语

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

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/712644.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot 3.1 新版HTTP调用

在SpringBoot3版本发布后 官方便声明了推荐使用了内置声明式的HTTP客户端。 一、声明式HTTP客户端使用(依赖引入) <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId></depende…

Dhrystone基准测试程序在Google Pixel4上运行跑分教程

记录一下实验过程&#xff0c;方便后续回顾 一、Dhrystone简介 Dhrystone是测量处理器运算能力的最常见基准程序之一&#xff0c;常用于处理器的整型运算性能的测量。程序是用C语言编写的&#xff0c;因此C编译器的编译效率对测试结果也有很大影响。 但其也有许多不足&#x…

常见人脸检测器, 调用摄像头检测人脸

常见人脸检测器, 调用摄像头检测人脸 文章目录 常见人脸检测器, 调用摄像头检测人脸[TOC](文章目录) 前言一、导入相关包二、Haar检测器三、Hog检测器四、CNN检测器五、SSD检测器六、MTCNN检测器七、Opencv结合检测器检测人脸7.1 Hog 检测器7.2 Haar检测器 前言 主要介绍几种常…

【花雕】全国青少年机器人技术一级考试模拟题(之一)

一.单选题&#xff08;20题&#xff0c;每题3分&#xff09; 1.下列图片中&#xff0c;哪个不是机器人&#xff08;&#xff09; 答案&#xff1a;D 2.机器人的英文单词是&#xff08;&#xff09; A. botre B. boret C. robot D. rebot 答案&#xff1a;C 3.机器人结构中&am…

网络安全进阶学习第六课——服务器解析漏洞

文章目录 1、概念2、Apache解析漏洞 CVE-2017-157153、Apache AddHandler解析漏洞4、IIS6 解析漏洞&#xff08;;&#xff09;5、IIS6 解析漏洞&#xff08;*.asp/目录&#xff09;6、IIS7 解析漏洞&#xff08;ISAP或CGI的模式下&#xff09;7、nginx解析漏洞&#xff08;cgi.…

USB 3.0 Rx Detect之超速U盘的识别

1 USB超速SerDes原理介绍 1.1 SerDes Rx.Detect SerDes Rx.Detect的原理比较简单&#xff0c;就是通过一个逻辑电路比较RC时间常数的大小。 - 当Rx不存在时&#xff0c;RC时间常数较小。 - 当Rx存在时&#xff0c;RC时间常数较大。 下面将详细描述其原理。 Figure 1-1 USB 3.0电…

SuperMap 的 Environment.initialization(this)空指针

如果你把ndk和动态权限等等都设置好了&#xff0c;还发现Environment.initialization(this)还有空指针问题存在。就试试我这个方法 许可文件要用10i的&#xff0c;别用11i的 SuperMap 有个so库文件是放在armeabi-v7a文件夹下的&#xff0c;armeabi-v7a不要放在jniLibs目录下&…

深度理解:Redis Hash(散列表)实现原理

Redis是一种开源的&#xff0c;基于内存的数据结构存储系统&#xff0c;可以用作数据库、缓存和消息代理。它支持多种类型的数据结构&#xff0c;例如字符串、散列表、列表、集合、有序集合等。今天我们将重点讨论Redis的一个重要数据结构&#xff1a;Hash&#xff0c;也叫散列…

Linux网络概念

1.1网络 是由若干结点和连接这些结点的链路组成&#xff0c;网络中的结点可以是计算机&#xff0c;交换机、路由器等设备 网络设备有&#xff1a;交换机、路由器、集线器 传输介质有&#xff1a;双绞线、同轴电缆、光纤 1.2互联网 把多个网络连接起来就构成了互联网&#…

vue+antd——实现拖拽上传文件——技能提升

最近看到有2023年博客之星的入围状况&#xff0c;提示我还差24篇高质量文章才可以入围。前两年由于比较勤奋&#xff0c;文章篇数足够&#xff0c;因此没有遇到这种提示过。现在补上几篇文章&#xff0c;希望可以入围吧。 1.html代码 <template><div class"clea…

编译linux内核(三)

内核配置选项[Centos] 挑选核心功能选项介绍1. General setup&#xff08;通用选项&#xff09;2. Enable loadable module support3. Enable the block layer4. Processor type and features(CPU 的类型与功能选择)5. Power management and ACPI options(电源管理功能)6. Bus …

【Python 随练】❀ 绘制正方形

题目&#xff1a; 画图&#xff0c;学用rectangle画方形。 简介&#xff1a; 在本篇博客中&#xff0c;我们将介绍如何使用Python的绘图库来画方形。我们将使用rectangle函数来绘制方形&#xff0c;并提供一个完整的代码示例来演示其用法。 绘制方形&#xff1a; 要绘制方…

Dom4j在某节点上添加已有的Element节点

需求&#xff1a;有两个xml文件需要解析&#xff0c;将A文件的节点解析之后放到了一个List<Element> list的集合中了&#xff0c;然后解析B文件&#xff0c;将list的内容填充到B中去。 众所周知&#xff0c;下面这段代码是可以添加一个节点元素的。 SAXReader reader n…

数通王国历险记之以太网和MAC地址

系列文章目录 数通王国历险记&#xff08;3&#xff09; 目录 前言 一&#xff0c;以太网的定义 二&#xff0c;如何理解以太网 2.1&#xff0c;以太网是一种广播式数据链路层协议 2.2&#xff0c;以太网支持多点接入 2.3&#xff0c;个人电脑的网络接口遵循的就是以太网…

Apikit 自学日记:如何分享 API、项目

开启/关闭在线分享 您可以在线分享项目给团队以外的人&#xff0c;其他人可以通过分享链接在线查看API文档并且进行API测试。通过这种方式查看API文档不需要注册账号&#xff0c;用户可方便查看接口文档和测试接口。 在项目内&#xff0c;点击进入项目管理菜单&#xff0c;选择…

【国产虚拟仪器】基于ZYNQ7045+V7 FPGA的多通道数据同步采集设计方案(二)

多通道数据采集电路主要流程为实现4路模拟信号接收&#xff0c;通过模数转换、信 号处理后的数据经过光纤传输到总站。多通道数据采集电路由模拟信号采集单元、 数字信号处理单元和信号转接板构成&#xff0c;组成框图如图4-1所示。 为了对带宽内的多个关键频点进行侦察监测&a…

Qt的未来发展趋势:跨平台、用户体验和AI的突破

Qt的未来发展有以下几个方面的趋势&#xff1a; 跨平台和多端支持&#xff1a;随着移动设备和嵌入式系统的普及&#xff0c;Qt将继续扩展其跨平台和多端支持能力。Qt已经在移动平台上取得了一定的成功&#xff0c;并且正在不断改进和优化移动开发工具和功能。未来&#xff0c;Q…

Tcl常用命令汇总

往期文章链接&#xff1a; 1&#xff09;基础篇&#xff1a;包括置换方法&#xff0c;特殊字符&#xff0c;incr与append用法&#xff0c;以及执行方式。 Tcl常用命令备忘录: 基础篇 2&#xff09;列表篇&#xff1a;包括list、concat、lrepeat、lindex、llength、lrange、l…

有趣的turtle(一)

关注“Python专栏”微信公众号&#xff0c;回复暗号【面试大全】&#xff0c;立即领取面试题简历模板。 turtle 是 Python 中用来绘图的标准库&#xff0c;它简单且有趣&#xff0c;很多Python初学者都愿意将它作为第一个学习对象。 下面的内容主要包含 turtle 的基本用法和一…

OpenCV(加载、修改、保存图像)

目录 1、图像加载 2、显示图像 3、修改图像 4、图像保存 OpenCV官方文档查询地址&#xff1a;OpenCV: OpenCV modules 1、图像加载 加载图像&#xff08;用cv::imread )imread功能是加载图像文件成为一个Mat对象&#xff0c;其中第一个参数表示图像文件名称 第二个参数&…