网络爬虫之东方财富网股票板块

Python爬虫实战:用Requests+Pandas批量抓取东方财富网板块股票数据(附完整源码) 本文详细介绍了如何使用Python的Requests和Pandas库构建一个高效的东方财富网股票数据爬虫,实现全板块股票数据的自动化抓取与存储。通过分析API接口、处理JSONP数据以及应对反爬策略,帮助开发者快速获取沪深京A股、创业板、科创板等市场的股票数据,为量化投资和基本面分析提供数据支持。 阅读详情

本文为原创博客,仅供技术学习使用。未经允许,禁止将其复制下来上传到百度文库等平台。如有转载请注明本文博客的地址(链接)。
源码或者jar包如有需要请联系:2428607276@qq.com

  • 要抓取的数据
  • 抓包
  • 框架
  • model
  • 建立数据表
  • 主方法
  • util
  • parse
  • db
  • job和jobmain

要抓取的数据

这个项目要抓取的是东方财富网的板块数据。
链接为http://quote.eastmoney.com/center/BKList.html#trade_0_0?sortRule=0
这里写图片描述


抓包

抓包具体请看我之前的博客。
链接为http://blog.csdn.net/qq_22499377/article/details/78114734


框架

本文使用的框架,如下图所示:
这里写图片描述
db:主要放的是数据库操作文件,包含MyDataSource和MYSQLControl。
model:用来封装对象,将要操作的对象的属性封装起来。
parse:这里面存放的是针对util获取的文件,进行解析,一般采用Jsoup解析。
main:程序起点,用来获取数据,执行数据库语句以及存放数据。
job:用来执行的job任务。
jobmain:控制器,即设定执行一次job的时间。股票数据每天下午3点钟收盘,即设置为3点钟以后的某个时间点开始爬行相关股票数据。


model

model用来封装我要爬的数据,如当天的日期,板块的id,板块的名称,板块价格等等。如下面程序:

package model;

//创建对象及我们爬取的数据内容包含以下字段
public class ExtMarketPlateModel {
   
   
    private String date;
    private String plate_rank;
    private String plate_id;
    private String plate_name;
    private float plate_price;
    private float plate_change;
    private float plate_range;
    private String plate_market_value;
    private float plate_turnover_rate;
    private String craw_time;
    public String getDate() {
        return date;
    }
    public void setDate(String date) {
        this.date = date;
    }
    public String getPlate_rank() {
        return plate_rank;
    }
    public void setPlate_rank(String plate_rank) {
        this.plate_rank = plate_rank;
    }
    public String getPlate_id() {
        return plate_id;
    }
    public void setPlate_id(String plate_id) {
        this.plate_id = plate_id;
    }
    public String getPlate_name() {
        return plate_name;
    }
    public void setPlate_name(String plate_name) {
        this.plate_name = plate_name;
    }
    public float getPlate_price() {
        return plate_price;
    }
    public void setPlate_price(float plate_price) {
        this.plate_price = plate_price;
    }
    public float getPlate_change() {
        return plate_change;
    }
    public void setPlate_change(float plate_change) {
        this.plate_change = plate_change;
    }
    public float getPlate_range() {
        return plate_range;
    }
    public void setPlate_range(float plate_range) {
        this.plate_range = plate_range;
    }
    public String getPlate_market_value() {
        return plate_market_value;
    }
    public void setPlate_market_value(String plate_market_value) {
        this.plate_market_value = plate_market_value;
    }
    public float getPlate_turnover_rate() {
        return plate_turnover_rate;
    }
    public void setPlate_turnover_rate(float plate_turnover_rate) {
        this.plate_turnover_rate = plate_turnover_rate;
    }
    public String getCraw_time() {
        return craw_time;
    }
    public void setCraw_time(String craw_time) {
        this.craw_time = craw_time;
    }

}

建立数据表

在写程序之前,先根据model的属性来建立数据表。建表的时候,一定要记得注明每一个属性的真实含义,以便以后的人可以轻松交接。

CREATE TABLE `ext_market_plate` (
  `date` date NOT NULL COMMENT '当天日期',
  `plate_rank` char(20) NOT NULL COMMENT '板块排名',
  `plate_id` char(20) NOT NULL COMMENT '板块代码',
  `plate_name` char(50) DEFAULT NULL COMMENT '板块名称',
  `plate_price` float(10,2) DEFAULT NULL COMMENT '板块最新价格',
  `plate_change` float(10,2) DEFAULT NULL COMMENT '涨跌额',
  `plate_range` float(10,4) DEFAULT NULL COMMENT '涨跌幅度',
  `plate_market_value` char(50) 
东方财富网 数据访问接口及字段说明 东方财富网 数据访问接口和字段说明 阅读详情

相关推荐

python如何爬虫股票数据_简单爬虫:东方财富网股票数据爬取(python_017)

需求:将东方财富网行情中心的股票数据爬取下来,包括上证指数、深圳指数、上证A股、深圳A股、新股、中小板、创业板 等一、目标站点分析东方财富网的行情中心页面包含了所有股票信息。在左侧的菜单栏中包含了沪深个股、沪深指数等所有股票数据。每个板块股票数据被隐藏在不同的菜单里。点击“沪深个股”按钮,对应的股票数据就被查询出来了。上方的选项卡中包含了不同板块板块:沪深A股、上证A股、深证A股、新股、中小板...

weixin_39714528的博客 2302

Fiddler对app抓包问题整理

Fiddler对app抓包问题整理,包含如何设置代理抓取app信息,如何查看信息等内容。

高效爬取东方财富网股票数据:从分析到存储的完整实践

本文详细介绍了如何使用Python爬虫技术高效爬取东方财富网股票数据,包括接口分析、数据提取、多板块爬取策略以及数据存储优化建议。通过实战案例和完整代码实现,帮助开发者快速掌握金融数据爬取技巧,提升数据获取效率。

weixin_30825581的博客 719

用Fiddler进行APP数据抓包

我是无线业务-何小伟,欢迎您看见这一篇文章。这里主要介绍使用Fiddler对Android及IPhone手机上如何进行网络数据抓包,比如我们想抓某个应用(手机京东,京东金融,京东钱包)的网络通信请求就可以利用这个方法。 1、PC端安装Fiddler 下载地址:Fiddler.exe,下面是Fiddler的简单介绍:Fiddler是强大且好用的Web调试工具之一,它能记录客户

wang_quan_li的专栏 1407

【Jmeter篇】你有Fiddler、Charles抓包,我有Jmeter录制Web和App

一、录制web端设置 1、启动jmeter,测试计划—添加—非测试元件—HTTP代理服务器 2、HTTP代理服务器设置,并启动 端口设置为8888,目标控制器选 测试计划>HTTP代理服务器,点启动,启动后在jmeter的bin目录下会生成一个文件:ApacheJMeterTemporaryRootCA.crt 3、浏览器设置代理 chrome 设置—打开代理设置—局域...

专业资深测试者,多年质量管理经验,浪迹网游、金融、房产、招聘及海外行业多年,CDSN百万原创阅读,公众号500+原创文章,提倡测试左移、风险、越权、假设、探索测试,喜欢用抽象思维模式思考和技术探讨,自动化、性能、安全测试实施者,感谢关注! 1004

简单爬虫:东方财富网股票数据爬取(20231230)

可以看到返回的文件中,data后为null,因此,在每个板块循环爬取时,只要碰到页码的返回文件中data的内容为null时,则停止爬取当前板块。同时由于返回文件中,data后的内容是以null变量的形式展示的,我们需要定义一个变量null,否则会出现报错NameError: name 'null' is not defined。查看网页源代码发现并没有目标数据,因此需要对网页进行抓包分析,查看哪个文件里包含目标数据,打开开发者模式(F12),找到目标文件。首先查看url,获取沪京深A股的第一页数据。

weixin_54500866的博客 1万+

python爬虫之入门级实战实例(东方财富人气top100、汉服荟视频下载)

文章目录前言一、东方财富人气top1001.需求说明2.数据爬取①首页数据② 实时趋势(排名)③历史趋势(排名)二、汉服荟小姐姐主页的视频爬取1.需求说明2. 数据爬取总结 前言 最近时间排不过来(在和大佬学习研究JS),所以本次更新内容较为简单,有两个站进行讲解示例。文章写的不好,py写的也不好,请大佬们看到的飘过~见笑了见笑了。本项目仅用于交流学习,若侵犯到贵公司权益请联系邮箱229456906@qq.com第一时间删除。读者请切忌用于一切非法途径,否则后果自行承担! 项目一(东方财富人气top10

tiebanggg的博客 1万+

东方财富股票数据JS逆向:secids字段和AES加密实战

以上步骤详细解析了股票数据接口的加密机制,包括抓包分析、加密变量定位、参数来源查找、AES加密还原和关键方法扣取。

switch616的博客 3288

Python爬虫

将前5页内容保存在数据库中,表名stock_new,除选中字段外还要加入id和created_time(yyyy-mm-dd)字段。东财爬取新股上市内容。688开头的为科创板。8或4开头的为北交所。

m0_47498690的博客 1130

爬虫如何实现每天爬取,定点爬取[以股票数据为例]

分析抓取的数据 抓包 框架 model main util parse db 问题所在 解决方法 job jobmain近期,有人将本人博客,复制下来,直接上传到百度文库等平台。 本文为原创博客,仅供技术学习使用。未经允许,禁止将其复制下来上传到百度文库等平台。如有转载请注明本文博客的地址(链接)分析抓取的数据本文是以东方财富网的数据为例,这里只做技术学习使用,请勿滥用。如本文要抓取的数据是东方

qy20115549的博客 3万+

python入门 爬虫笔记

先将要用到的包导入 import requests import time import random import pandas as pd import re import lxml.html ​​​​​​行情中心:国内快捷全面的股票、基金、期货、美股、港股、外汇、黄金、债券行情系统_东方财富网d​​​​​​ 到目标网站找到url获取单页的数据并构造headers def gethtml(cmd,page): headers = { 'Accept':'*/...

weixin_55974294的博客 150

毕设设计|计算机毕业设计|大数据深度学习|基于大数据的股票分析及走势预测系统

Python 是一种高级、解释型、面向对象的编程语言,以其简洁、易读的语法和丰富的库而备受青睐。在 Netflix 用户信息可视化系统开发中,Python 发挥着重要作用。Python 拥有大量用于数据处理和分析的库,如 Pandas、NumPy 等。Pandas 提供了快速、灵活、明确的数据结构,方便对用户数据进行清洗、转换和分析。使用 Pandas 可以轻松处理 Netflix 用户数据中的缺失值、重复值等问题,将数据整理成适合分析的格式。

2201_75937987的博客 805
上一篇: 网络爬虫抓包的使用
下一篇: 程序、算法和数据结构的关系
滴滴答答要努力
博客等级 码龄12年 44粉丝 34原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值