Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >使用scrapy抓取股票代码

使用scrapy抓取股票代码

原创
作者头像
西门吹雪1997
发布于 2023-07-12 14:21:42
发布于 2023-07-12 14:21:42
2350
举报

源码地址:https://github.com/geeeeeeeek/scrapy_stock

抓取工具:scrapy

scrapy介绍

Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。其最初是为了 页面抓取 (更确切来说, 网络抓取 )所设计的, 也可以应用在获取API所返回的数据(例如 Amazon Associates Web Services ) 或者通用的网络爬虫。

安装scrapy

代码语言:txt
AI代码解释
复制
pip install Scrapy
抓取步骤

选择一个网站 --> 定义数据 --> 编写spider

首先使用scrapy创建一个项目

代码语言:txt
AI代码解释
复制
scrapy startproject tutorial
  1. 选择一个网站

这里我们选择的是东方财富网的股票代码页面:http://quote.eastmoney.com/stocklist.html

  1. 定义要抓取的数据

我们需要抓取股票的代码id,因此只需要定义stock_id

代码语言:txt
AI代码解释
复制
class StockItem(scrapy.Item):
    stock_id = scrapy.Field()
  1. 编写spider
代码语言:txt
AI代码解释
复制
class StockSpider(scrapy.Spider):
    name = 'stock'

    def start_requests(self):
        url = 'http://quote.eastmoney.com/stocklist.html'
        yield Request(url)

    def parse(self, response):
        item = StockItem()
        print "===============上海================"
        stocks_sh = response.css('div#quotesearch ul li a[href*="http://quote.eastmoney.com/sh"]::text')
        for stock in stocks_sh:
            item['stock_id'] = 's_sh' + re.findall('\((.*?)\)', stock.extract())[0]
            yield item

        print "===============深圳================"
        stocks_sz = response.css('div#quotesearch ul li a[href*="http://quote.eastmoney.com/sz"]::text')
        for stock in stocks_sz:
            item['stock_id'] = 's_sz' + re.findall('\((.*?)\)', stock.extract())[0]
            yield item

玄机尽在response.css('div#quotesearch ul li a[href*="http://quote.eastmoney.com/sh"]::text’),使用了css来过滤自己需要的数据。

运行程序

代码语言:txt
AI代码解释
复制
scrapy crawl stock -o stock.csv

即可生成stock.csv文件

预览如下:

代码语言:txt
AI代码解释
复制
stock_id
s_sh201000
s_sh201001
s_sh201002
s_sh201003
s_sh201004
s_sh201005
s_sh201008
s_sh201009
s_sh201010
s_sh202001
s_sh202003
s_sh202007
s_sh203007
s_sh203008
s_sh203009
…

如果要查询单个股票的股票行情,可以使用新浪的股票接口:

http://hq.sinajs.cn

例如

http://hq.sinajs.cn/list=s_sh600756

即可得到浪潮软件的股票行情

代码语言:txt
AI代码解释
复制
var hq_str_s_sh600756="浪潮软件,19.790,1.140,6.11,365843,70869";

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python爬虫系列:Scrapy爬取实例(End~)
emmm,最近开始准备Java的文章,关于Python爬虫的文章也决定告一段落,那么这里小编决定给大家再来分析一下关于Scrapy.
小Bob来啦
2021/07/29
4960
Python: “股票数据Scrapy爬虫”实例
文章背景:之前基于requests-bs4-re的技术路线(参加文末的延伸阅读),获取沪深两市A股所有股票的名称和交易信息,并保存到文件中。本文采用scrapy模块,进行股票数据的爬虫。
Exploring
2022/09/20
1.1K0
Python: “股票数据Scrapy爬虫”实例
获取A股行情数据方法[通俗易懂]
做股票量化分析,获取股票行情数据是第一步,结合网上的信息,和我用过的一些东西,做个总结。以后有新信息,逐步完善。
全栈程序员站长
2022/07/25
8.6K0
新浪实时股票数据接口1
股票数据的获取目前有如下两种方法可以获取: 1. http/javascript接口取数据 2. web-service接口
全栈程序员站长
2022/11/16
5.4K1
新浪实时股票数据接口1
股票交易日定时爬取上交所/深交所所有股票行情数据存储到数据库
远程ssh配置,配置定时任务(tip:建议晚上进行采集(或闭市时间),因为交易时间,股票的数据在动态变化)
互联网金融打杂
2018/08/02
1.7K0
股票交易日定时爬取上交所/深交所所有股票行情数据存储到数据库
Python 爬虫实战:股票数据定向爬虫
功能简介 目标: 获取上交所和深交所所有股票的名称和交易信息。 输出: 保存到文件中。 技术路线: requests—bs4–re 语言:python3.5 说明 网站选择原则: 股票信息静态存在于h
小小科
2018/05/04
1.1K0
Python 爬虫实战:股票数据定向爬虫
股票实时数据接口
如果你要同时查询多个股票,那么在URL最后加上一个逗号,再加上股票代码就可以了;比如你要一次查询大秦铁路(601006)和大同煤业(601001)的行情,就这样使用URL:
斯文的程序
2019/11/07
27.1K0
Python股票实时查看告警工具
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
逝兮诚
2019/10/30
3.1K0
Scrapy 入门教程
爬虫就是Scrapy用来从网站抓取数据的类,它们都继承于scrapy.Spider类。
Stanley Sun
2019/09/23
8120
Python网络爬虫与信息提取
​ 需要注意的是,淘宝网站本身有反爬虫机制,所以在使用requests库的get()方法爬取网页信息时,需要加入本地的cookie信息,否则淘宝返回的是一个错误页面,无法获取数据。
py3study
2020/01/15
2.4K0
Python网络爬虫与信息提取
Scrapy框架
简单网页的爬取可以利用re模块,复杂网页的爬取对于内容的提取则会显得十分麻烦。Scrapy框架是python下的一个爬虫框架,因为它足够简单方便受到人们的青睐。
爱编程的小明
2022/09/05
4910
Scrapy框架
Scrapy学习
在 scrapy_test 项目中的目录 spiders 中创建文件 quotes_spider.py
cuijianzhe
2022/06/14
1.3K0
Scrapy学习
股票API
股票数据的获取目前有如下两种方法可以获取: 1. http/javascript接口取数据 2. web-service接口
全栈程序员站长
2022/07/23
5.5K0
小刮刮Scrapy
从大二开始接触python,到现在已经是第三个年头了;随着入职腾讯,进入云原生行业后,python已经不再是我的主要开发语言,我转而收养了golang小地鼠成为了一名gopher
Kevinello
2022/08/19
6930
小刮刮Scrapy
Python数据抓取——多线程,异步
本文主要是为了加快数据抓取任务,考虑使用多进程、多线程、异步原理,相关概念可以参考 https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013868322563729e03f6905ea94f0195528e3647887415000
py3study
2020/01/13
1.2K0
Scrapy快速入门系列(1) | 一文带你快速了解Scrapy框架(版本2.3.0)
如果想要详细的查看Scrapy的相关内容可以自行查看官方文档。 文档地址如下:https://docs.scrapy.org/en/latest/intro/overview.html#walk-through-of-an-example-spider
不温卜火
2020/10/28
1.3K0
Scrapy快速入门系列(1) | 一文带你快速了解Scrapy框架(版本2.3.0)
Scrapy框架的使用之Scrapy入门
接下来介绍一个简单的项目,完成一遍Scrapy抓取流程。通过这个过程,我们可以对Scrapy的基本用法和原理有大体了解。 一、准备工作 本节要完成的任务如下。 创建一个Scrapy项目。 创建一个Spider来抓取站点和处理数据。 通过命令行将抓取的内容导出。 将抓取的内容保存的到MongoDB数据库。 二、准备工作 我们需要安装好Scrapy框架、MongoDB和PyMongo库。 三、创建项目 创建一个Scrapy项目,项目文件可以直接用scrapy命令生成,命令如下所示: scrapy st
崔庆才
2018/06/25
1.4K0
Scrapy1.4最新官方文档总结 2 Tutorial创建项目提取信息XPath简短介绍继续提取名人名言用爬虫提取信息保存数据提取下一页使用爬虫参数更多例子
这是官方文档的Tutorial(https://docs.scrapy.org/en/latest/intro/tutorial.html)。 推荐四个Python学习资源: Dive Into Py
SeanCheney
2018/04/24
1.4K0
Scrapy1.4最新官方文档总结 2 Tutorial创建项目提取信息XPath简短介绍继续提取名人名言用爬虫提取信息保存数据提取下一页使用爬虫参数更多例子
Python爬虫——Scrapy爬取名人名言
toscrape是一个名人名言的网站 一条名人名言的结构如下 <div class="quote" itemscope="" itemtype="http://schema.org/CreativeWork"> <span class="text" itemprop="text">“I have not failed. I've just found 10,000 ways that won't work.”</span> <span>by <small class="au
羊羽shine
2019/05/29
9960
Scrapy爬虫入门
安装是不是很简单呢? 现在我们通过官方的小demo来演示如何爬虫。 将下面的文件保存为22.py文件
逍遥子大表哥
2022/10/31
5860
Scrapy爬虫入门
相关推荐
Python爬虫系列:Scrapy爬取实例(End~)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档