实战yt制作雪球网股票数据爬虫工具腾讯云开发者社区

最近有盆友需要帮忙写个爬虫脚本,爬取雪球网一些上市公司的财务数据。盆友希望可以根据他自己的选择进行自由的抓取,所以简单给一份脚本交给盆友,盆友还需要自己搭建python环境,更需要去熟悉一些参数修改的操作,想来也是太麻烦了。

于是,结合之前做过的汇率计算器小工具,我这边决定使用PyQt5给朋友制作一个爬虫小工具,方便他的操作可视化。

首先引入需要的库

这一步的目的是获取需要爬取的数据的真正URL地址规律。

当我选中某只股票查看财务数据某类型数据报告时,点击下一页,网站地址没有变化,基本可以知道这是动态加载的数据,对于这类数据可以使用F12打开开发者模式。

在开发者模式下,选到Network—>XHR可以查看到真正的数据获取地址URL及请求方式(General里是请求URL和请求方式说明,Request Headers有请求头信息,如cookie,Query String Parameters就是可变参数项,一般来说数据源URL就是由基础URL和这里的可变参数组合而成)

我们分析这段URL,可以发现其基本结构如下:

基于上述结构,我们拆分最终的组合URL地址如下

操作界面设计使用的是PyQt5,这里不做更详细的介绍,我们在后续中对PyQt5的使用再专题讲解。

使用QT designer对操作界面进行可视化设计,参考如下:

.ui文件可以使用pyuic5指令进行编译生成对应的.py文件,或者我们也可以在vscode里直接转译(这里也不做更详细的介绍,具体见后续专题讲解)。

本文没有将操作界面定义文件单独使用,而是将全部代码集中在同一个.py文件,因此其转译后的代码备用即可。

为了便于小工具拿来即可使用,我们需要自动获取cookie地址并附加在请求头中,而不是人为打开网页在开发者模式下获取cookie后填入。

自动获取cookie,这里使用到的requests库的session会话对象。

requests库的session会话对象可以跨请求保持某些参数,简单来说,就是比如你使用session成功的登录了某个网站,则在再次使用该session对象请求该网站的其他网页都会默认使用该session之前使用的cookie等参数

基础参数是用于财务数据请求时原始网址构成参数选择,我们在可视化操作工具中需要对财务数据类型进行选择,因此这里需要构建财务数据类型字典。

因为我们在可视化操作工具上是选定股票代码后抓取相关数据并导出,对导出的文件名称希望是以股票代码+公司名称的形式(SH600000 浦发银行)存储,所以我们需要获取股票代码及名称对应关系的字典表。

这其实就是一个简单的网络爬虫及数据格式调整的过程,实现代码如下:

A股股票代码及公司名称字典如下:

由于请求后的数据是json格式,因此可以直接进行转化为dataframe类型,然后进行导出。在数据导出的时候,我们需要判断该数据文件是否存在,如果存在则追加,如果不存在则新建。

通过选定的参数生成财务数据网址,然后根据是否全选决定后续数据请求的操作,因此可以拆分为获取数据网址和请求详情数据两部分。

证券市场类型 控件 是radioButton,可以通过你 ischecked() 方法判断是否选中,然后用if-else进行参数设定;

财务数据类型 和 股票代码 因为支持 全选,需要先进行全选判定(全选条件下是需要循环获取数据网址,否则是单一获取即可),因此这部分需要再做拆分;

单页数量 考虑到每年有4份财务报告,因此这里默认为年份差*4;

需要根据用户输入决定数据采集方式,代码中主要是根据用户输入做判断然后再进行详情数据请求。

上面就是制作过程讲解与关键代码,由于源代码内容较多,就不全量展示了,可在后台回复“XQ”可获取完整源代码文件!

THE END
0.用Python打造你的股市分析工具箱:从数据获取到K线图绘制K 线图是金融市场中常用的技术分析工具,可以直观地展示股票价格的走势和波动情况。本文将介绍如何使用 Python 和 akshare、mplfinance 库来获取东方财富网的股票日线数据并绘制 K 线图。 代码 import akshare as ak import mplfinance as mpf import pandas as pd import matplotlib.pyplot as plt # 设置 MatplotlibjvzquC41dnuh0lxfp0tfv8Ytd4622:71ctzjeuj1fgzbkux135<2;9>43
1.如何制作金融投资分析工具?分析工具制作有哪些要点?股票频道在金融投资领域,制作实用的分析工具能够帮助投资者更准确地评估市场、分析数据,从而做出更明智的投资决策。下面将详细介绍制作金融投资分析工具的方法和要点。 首先,明确分析工具的目标和功能。不同的投资者有不同的需求,比如有的投资者关注股票的基本面分析,有的则侧重于技术分析。因此,在制作分析工具之前,要确定它是jvzquC41uvudm7mgzwt/exr14286/9
2.股票的数据分析图怎么制作|帆软数字化转型知识库制作股票的数据分析图的方法包括:选择合适的软件工具、收集和整理数据、进行数据清洗和处理、选择合适的图表类型、进行图表的美化和优化。在选择合适的软件工具方面,推荐使用FineBI,它是帆软旗下的一款专业数据分析工具,能够帮助用户快速创建高质量的数据可视化图表。FineBI官网:https://s.fanruan.com/f459r;。FineBIjvzquC41yy}/hjstwct/exr1dnuh1jwvkerf1>5927<0
3.ai写股票分析报告的软件:哪些软件能够自动生成?爱制作写作软件是一款国内知名的写作工具,它支持多种写作场景,包含股票分析报告。使用者只需输入关键词软件即可自动生成具有洞察力的报告。爱制作写作软件还提供了丰富的模板,方便使用者实个性化定制。 2. 讯飞写作助手 讯飞写作助手是科大讯飞推出的一款写作工具,它支持多种写作场景涵股票分析报告。软件能够依据客户输入jvzquC41yy}/{jsiiw4ux8|gdiuw1jnvqpm03?55:54ivvq
4.java做的股票分析软件mob649e815adb02的技术博客作为一名刚入行的小白,学习如何使用Java开发股票分析软件可能会让你感到困惑。然而,只要你按照一定的步骤进行,就能够逐步实现这个目标。本文将介绍开发股票分析软件的流程,以及每一步需要执行的代码示例和解释。 开发流程 下面是开发股票分析软件的基本流程: jvzquC41dnuh0>6evq4dqv4wa3<29>982172:A:977
5.七天学会「股票数据分析软件」的开发(下)如何做一个股票测试软件本文介绍了股票数据分析软件的开发过程,包括数据获取、分析与可视化。使用DotNetBar.ChartControl组件实现数据可视化,展示了蜡烛图、历史交易曲线等多种图表。 昨天下午把《我不是药神》这部电影看了,搞得我哭的稀里哗啦,里面有一些情节触痛了内心中最薄弱的地方。药厂没有错,他们要收回前期投入的研发成本。主人公 程勇jvzquC41dnuh0lxfp0tfv8QUIQeN[Y4ctvodnn4fgvgjn|4:3475;=6
6.如何制作和使用虚拟股票图表股票频道在当今的金融市场中,虚拟股票图表已成为投资者分析股票表现和预测市场趋势的重要工具。通过模拟真实的股票交易环境,虚拟股票图表不仅可以帮助新手投资者学习交易技巧,还能让经验丰富的投资者测试新的交易策略。本文将详细介绍如何制作和有效使用虚拟股票图表,以提升您的投资决策能力。 一、选择合适的虚拟股票图表工具 首先,选择一个适合您需求的虚拟股 jvzquC41uvudm7mgzwt/exr14285/9;/48533<8469:10qyon
7.数据制作图表,如何利用数据制作股票图表数据制作图表 本文介绍了如何利用数据制作股票相关的图表,包括K线图、成交量图、MACD指标图等,通过图表分析研判股票走势,提升投资决策的准确性和效果。同时还分享了一些常用的数据制作图表的工具和技巧,帮助投资者更好地进行选股和监控市场动态。数据制作图表, 股票jvzquC41o0;63A=0eqs0vxukeu382=>420nuou
8.如何制作特定金融产品相关工具?制作要点有哪些?股票频道要收集多种来源的数据,包括金融市场的实时行情数据、宏观经济数据、公司财务数据等。同时,对收集到的数据进行清洗和预处理,去除错误、重复的数据,保证数据的质量。例如,在制作股票分析工具时,需要收集上市公司的历史股价、财务报表、行业动态等数据,并进行标准化处理,以便后续的分析和计算。jvzquC41uvudm7mgzwt/exr14286/9:/3:533B5;56:30qyon
9.如何自定义股票分析工具?这种自定义工具有哪些实际应用?在当今的金融市场中,股票分析工具对于投资者来说至关重要。然而,通用的股票分析工具可能无法完全满足每个人的特定需求,因此自定义股票分析工具成为了许多投资者追求的目标。 要自定义股票分析工具,首先需要明确自身的投资策略和分析重点。这包括对技术分析指标的偏好,如移动平均线、相对强弱指标(RSI)等,或者对基本面数据jvzquC41o0nfz~s0eqs0u}tem1814=232/671;66:6759A3jvor
10.wh5股票价格研究软件评分排名 从市场表现、经营能力、偿债能力等多方面,对自选股进行综合评分,筛选出竞争力强的优质股票,构建投资组合。 wh5 股票价格研究软件 面向专业投资者,基于财务分析,提供多因子估值图表,利润滤镜、风险甄别、EVA分析等风险研究工具jvzq<84yj74xgwmwc0ipo7hp1
11.如何利用软件制作K线图来分析股市趋势?制作K线图来分析股市趋势,你可以选择一些专业的股票分析软件,比如同花顺、通达信等。这些软件提供了丰富的jvzquC41yy}/|qniwh4dqv4swgyukxsuafkucrq198>2;B6
12.一目了然的趋势罗盘指标源码财富号炒股第一步,先开个股票账户 今天分享一个简洁却极具实战价值的趋势判断工具——「操盘线+EMA3」多空导航系统。它不仅能自动识别市场主趋势,还能用红绿K线+黄青信号直观告诉你:何时该进攻,何时该防守! 安装后的效果图! 不会安装的,点击下方链接看教程 jvzquC41ecogwqfq0ggtvvtpg{4dqv4pgyy0497733732A9555=:3:63776
13.运用python制作一个完整的股票分析系统使用python制作一个股票分析系统,可以通过股票价格走势动态界面,实时动态监测不同类型股票的变化情况。以下是一个完整的股票分析系统开发指南,包括股票价格走势动态界面和实时监测功能。这个系统将结合网络爬虫、数据分析、机器学习和可视化技术,帮助你实时监测不同类型股票的变化情况。 jvzquC41dnuh0lxfp0tfv8qk;2722:6451gsvrhng1jfvjnnu1757?:836?