python小案例——采集财经数据

news2024/11/15 23:48:09

前言

大家早好、午好、晚好吖 ❤ ~

另我给大家准备了一些资料,包括:

2022最新Python视频教程、Python电子书10个G

(涵盖基础、爬虫、数据分析、web开发、机器学习、人工智能、面试题)、Python学习路线图等等

全部可在文末名片获取哦!

开发环境:

  • 解释器版本: python 3.8

  • 代码编辑器: pycharm 2021.2

  • requests: pip install requests

  • pandas: pip install pandas

  • pyecharts: pip install pyecharts

1. 什么是pachong?

采集互联网(网页/app)数据的一项技术 (图片/音频/视频/文本) + 抢购操作 / 人为能够做的一些操作(脚本)

原理:

模拟成 客户端(网页/app) 向 服务器 发送网络请求

不要让对方(服务器)难受 百度(各大搜索引擎 都是爬虫)

2. 有哪些步骤 该如何实现?

一. 思路分析

  1. 需要采集什么数据?

    股票信息

  2. 数据在哪里?

    通过 f12 打开 network(网络面板) 记录网页当中的数据资源的 抓包分析

二. 代码实现

  1. 发送请求 通过代码的方式访问网站

  2. 获取数据

  3. 解析数据 提取数据 把想要的留下来

  4. 保存数据

代码展示

导入模块

import requests     # 发送请求
import csv
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'])
for page in range(0, 213):
    # url 数据来源 数据包 网页链接
    url = f'http://      .money.163.com/hs/service/diyrank.php?host=http%3A%2F%2Fquotes.money.163.com%2Fhs%2Fservice%2Fdiyrank.php&page={page}&query=STYPE%3AEQA&fields=NO%2CSYMBOL%2CNAME%2CPRICE%2CPERCENT%2CUPDOWN%2CFIVE_MINUTE%2COPEN%2CYESTCLOSE%2CHIGH%2CLOW%2CVOLUME%2CTURNOVER%2CHS%2CLB%2CWB%2CZF%2CPE%2CMCAP%2CTCAP%2CMFSUM%2CMFRATIO.MFRATIO2%2CMFRATIO.MFRATIO10%2CSNAME%2CCODE%2CANNOUNMT%2CUVSNEWS&sort=PERCENT&order=desc&count=24&type=query'

代码里网址就给大家屏蔽了,不然发不出来

完整代码有需要的可以文章下方名片获取哦~

(或者评论已点赞收藏,求代码,我私你呀)

  1. 发送请求

    .get / .post 爬虫99%请求方式都是这两种

    response = requests.get(url=url)
  1. 获取数据

    .text: 获取文本内容

    .content: 获取二进制数据 (图片/音频/视频)

    .json(): {}所包裹的数据 .json()取值 解析数据就会更方便 更简单 字典

    json_data = response.json()
  1. 解析数据
    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)
  1. 保存数据
        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])

尾语 💝

要成功,先发疯,下定决心往前冲!

学习是需要长期坚持的,一步一个脚印地走向未来!

未来的你一定会感谢今天学习的你。

—— 心灵鸡汤

本文章到这里就结束啦~感兴趣的小伙伴可以复制代码去试试哦 😝

👇问题解答 · 源码获取 · 技术交流 · 抱团学习请联系👇

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

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

相关文章

MATLAB算法实战应用案例精讲-【人工智能】语义分割(补充篇)(附实战应用案例及代码)

前言 语义分割作为计算机视觉领域的关键任务,是实现完整场景理解的必经之路。为了让机器拥有视觉,要经过图像分类、物体检测再到图像分割的过程。其中,图像分割的技术难度最高。 越来越多的应用得益于图像分类分割技术,全场景理解在计算机视觉领域也至关重要。其中一些应…

强大的ANTLR4(3)--算术表达式

下面要构建一个简单的计算器,规则如下: 1)可以由一系列语句构成,每条语句由换行符终止 2)一条语句可以是表达式、赋值语句或空行 3)可以有加减乘除、小括号以及变量出现 例如,文件名t.expr的内…

【Java】PriorityQueue梳理

【Java】PriorityQueue梳理 简介 PriorityQueue是优先队列的意思。优先队列的作用是能保证每次取出的元素都是队列中权值最小的。这里牵涉到了大小关系,元素大小的评判可以通过元素本身的自然顺序(natural ordering),也可以通过…

linux的例行性工作

一,单一执行的例行性工作 定时任务,将来的某个时间点执行 使用单一理性工作的命令:at -> atd 命令 服务名 查看atd状态,看有没有这个服务,查看结果为有 我们使用 at 命令来生成所要运行的工作,并将…

Taro+nutui h5使用nut-signature 签名组件的采坑记录

近期在使用Taro(“tarojs/taro”: “3.4.0-beta.0”) Nutui (3.1.16)开发H5时,需要一个签名功能结果在小程序上运行正常的 nut-signature组件,在h5上出问题了 首先问题是 : Nutui的 签名组件(nut-signature&#xff…

加解密与HTTPS(3)

您好,我是湘王,这是我的CSDN博客,欢迎您来,欢迎您再来~ 除了对称加密算法和非对称加密算法,再就是最后的一种加密算法了:不可逆加密算法。 对称加密算法和非对称加密算法在处理明文的过程中需要…

线程池ThreadPoolExecutor的源码中是如何解决并发问题的?

ThreadPoolExecutor面临哪些线程安全问题 ThreadPoolExecutor俗称线程池,作为java.util.concurrent包对外提供基础实现,以内部线程池的形式对外提供管理任务执行,线程调度,线程池管理等等服务。 然而为高效并发而生ThreadPoolExe…

C++项目实战:职工管理系统

1.管理系统的要求 系统可以管理公司内部所有员工的信息 主要使用c实现一个基于多态的职工管理系统 公司中的职工分为三类:普通员工、经理、老板,显示信息时需要显示职工编号、职工姓名、职工岗位以及职责 普通员工职责:完成经理安排的各项任…

oh my 毕设-人体姿态估计综述

文章目录What is Human Pose Estimation?Classical vs. Deep Learning-based approachesClassical approaches to 2D Human Pose EstimationDeep Learning-based approaches to 2D Human Pose EstimationHuman Pose Estimation using Deep Neural NetworksOpenPoseAlphaPose (…

想要努力赚钱,培养四种基础能力

这四种基础能力分别是:认知力、学习力、执行力、复盘力。我们的认知和思维,很大程度上,都是由所处的环境和圈子决定的。在同一个环境和圈子里面呆久了,你的认知就会被固化了。穷人最根本的枷锁,不是缺乏资金&#xff0…

excel图表技巧:看看,这个饼图象不象罗盘?

说到制作柱形图、条形图、饼图,相信大家都没有问题,直接选中数据,再插入对应的图表就行了,可如果要制作一张双层饼图你还会吗?“啥?还有双层饼图?”嘿嘿,不知道了吧,双层…

PVE+NUT+群晖等配置

文章目录配置文件说明默认配置(翻译的)ups.conf(设置ups通信相关)upsd.conf(设置ups客户访问的相关信息)upsd.users(设置upsd用户)nut.conf(nut的配置,主要是模式,决定使用哪些文件)upsmon.confupssched.confupssched-cmd官方手册写的可以的文章只需要实现&#xff…

excel数据查找:内容查找统计的函数公式

判断单元格是否包含特定内容是平时工作中经常会遇到的一类问题,常见于包含备注信息的表格中。例如下面这个考勤汇总表,需要根据备注中的内容判断该员工是否存在加班的情况,就属于这类问题。 遇到这类问题该如何处理,常用的公式做法…

klee2.3 教程1-2

1. klee2.3 安装 system:unbuntu 20.04 note: llvm-13klee2.3z3-4.10 1.1 install dependencies KLEE 需要 LLVM 的所有依赖项(请参阅此处),以及更多。特别是,您应该安装下面列出的程序和库。graphviz/doxygen是可…

初级C语言之【操作符】

🦖作者:学写代码的恐龙 🦖博客主页:学写代码的恐龙博客主页 🦖专栏:【初级c语言】 🦖语录:❀未来的你,一定会感谢现在努力奋斗的自己❀ 初级C语言之【操作符详解】一&am…

综合能源系统分析的统一能路理论(三):《稳态与动态潮流计算》(Python代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

spring6笔记3(bean的循环依赖,手写spring框架,ioc注解开发,JdbcTemplate)

第九章、Bean的循环依赖问题 9.1 什么是Bean的循环依赖 A对象中有B属性。B对象中有A属性。这就是循环依赖。我依赖你,你也依赖我。 比如:丈夫类Husband,妻子类Wife。Husband中有Wife的引用。Wife中有Husband的引用。 public class Husband…

【java线程池详解】

java线程池详解线程的基本状态Executor框架Executor框架组成部分Executor框架使用示意图Runnable接口、Callable接口ExecutorsFuture接口和实现Future接口的FutureTask类Future和FutureTask的关系ThreadPoolExecutor类ThreadPoolExecutor 饱和策略(拒绝策略&#xf…

MySQL去重,一条SQL语句完美解决【去重留一】

此处以某消费记录表(consume_record)为例,SQL语句如下: DELETE consume_record FROM consume_record, ( SELECT min(id) id, user_id, monetary, con…

Qt第五十五章:Qt Design Studio设计登录页并打包到python运行

目录 一、Qt Design Studio 二、导出所有文件到QRC(不要改动默认的QRC文件名称) 三、QRC转换成py 1.删除Constants.qml中的 2.将App.qml和Screen01.qml中的 3.转换 4、将QRC文件和转换后的py文件,复制到python项目中使用。 一、Qt Des…