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

目录标题

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

前言

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

环境使用:

  • 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.hqwc.cn/news/7747.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据Doris(五十):Export导出原理

文章目录 Export导出原理 一、原理 二、查询计划拆分 三、查询计划执行 Export导出原理 Doris Export、Select Into Outfile、MySQL dump三种方式数据导出。用户可以根据自己的需求导出数据。此外数据还可以以文件形式通过Borker备份到远端存储系统中&#xff0c;之后可以…

【Linux】Linux项目自动化构建工具-make/makefile

Linux项目自动化构建工具-make/makefile 什么是make/makefile&#xff1f;make/makefile的使用依赖关系依赖方法makefile是如何工作的&#xff1f;为什么要使用makefile呢&#xff1f;makefile是怎么做到的呢&#xff1f;make和make clean.PHONY&#xff1a;伪目标 特殊符号&am…

1 Prometheus-监控简介

目录 1 什么是监控 1.1 技术作为客户 1.2 业务作为客户 2. 监控基础知识 2.1 事后监控 2.2 机械式/模板式/无脑式监控 2.3 不够准确的监控 2.4 静态监控 2.5 不频繁的监控 2.6 缺少自动化或操作繁琐/不便 2.7 监控模式总结 3.监控机制 3.1 探针和内省 3.2 拉取和推…

LangChain大型语言模型(LLM)应用开发(二):Conversation Memory

LangChain是一个基于大语言模型&#xff08;如ChatGPT&#xff09;用于构建端到端语言模型应用的 Python 框架。它提供了一套工具、组件和接口&#xff0c;可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理与语言模型的交互&#x…

Unity协程

unity提供了一种类似“多段代码并行执行”的功能&#xff0c;即协程。 我们在定义一个协程的时候&#xff0c;需要遵循类似这样的语法 IEnumerator&#xff08;枚举器接口&#xff09; namespace System.Collections {public interface IEnumerator{object Current { get; }/…

MySql基础知识及数据查询

目录 第一章 数据库概述 1.为什么要学习数据库&#xff1f; 2.数据库的相关概念 3.ORM(Object Relational Mapping)思想 4.表与表的记录之间存在哪些关联关系 第二章 基本的SELECT语句 1.SQL的分类 2. SQL基本规则 3.导入现有的数据表、表的数据 4.最基本的…

位图的详解

目录 位图 位图的概念 位图的实现 位图常见三道面试题 1.给定100亿个整数&#xff0c;设计算法找到只出现一次的整数&#xff1f; 2. 给两个文件&#xff0c;分别有100亿个整数&#xff0c;我们只有1G内存&#xff0c;如何找到两个文件交集&#xff1f; 3. 位图应用变形…

使用随便测测平台-做接口测试

目录 接口数据的来源 导出har文件 导入har文件 转化为用例 提取数据进行替换 如何选择哪些数据需要替换呢&#xff1f; Url Params、Data ​编辑进行替换操作 断言-冒烟 断言-详细 测试报告 结束 接口数据的来源 1、可通过charles工具&#xff0c;录制好接口操作&…

IDEA恢复误删除的文件

idea将删除的文件放在idea文件缓存中&#xff0c;文件的更改等信息都放在这个缓存中&#xff0c;所以短时间内删除的文件可以尝试恢复。

蚂蚁金服面试题解析:为什么String是HashMap中的绝佳Key类型?

大家好&#xff0c;我是小米&#xff0c;在今天的文章中&#xff0c;我将与大家一起探讨在使用HashMap时&#xff0c;选择使用String作为Key所带来的诸多好处。作为一位热爱技术的小伙伴&#xff0c;相信你一定对HashMap这个数据结构有所了解&#xff0c;那么&#xff0c;我们就…

【flutter滑动拼图验证码】

Java后台使用aj_captcha插件&#xff0c;提供/captcha/get&#xff08;获取captcha底图和拼块图片&#xff09;、/captcha/check&#xff08;验证拼图偏移量&#xff09;这两个接口。并且这个插件在GitHub上有源码。 1.先准备好aj_captcha的工具类&#xff1a; import dart:co…

【Spring/Java项目】如何利用swagger-parser解析yaml中的api请求类型、注释、接口名等等(含示例代码)

手打不易&#xff0c;如果转摘&#xff0c;请注明出处&#xff01; 注明原文&#xff1a;https://zhangxiaofan.blog.csdn.net/article/details/129167371 目录 前言 官方文档 项目配置 示例代码 测试文件 解析代码 运行结果 前言 用到这个工具是因为项目需要&#xff0…