文章来源:mypython.me

源码地址:github.com/geeeeeeeek/…

抓取工具:scrapy

scrapy介绍

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

安装scrapy

pip install Scrapy
复制代码

抓取步骤

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

首先使用scrapy创建一个项目

scrapy startproject tutorial
复制代码
  1. 选择一个网站

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

  1. 定义要抓取的数据

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

class StockItem(scrapy.Item):stock_id = scrapy.Field()
复制代码
  1. 编写spider
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 itemprint "===============深圳================"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来过滤自己需要的数据。

运行程序

scrapy crawl stock -o stock.csv
复制代码

即可生成stock.csv文件

预览如下:

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
…
复制代码

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

hq.sinajs.cn

例如

hq.sinajs.cn/list=s_sh60…

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

var hq_str_s_sh600756="浪潮软件,19.790,1.140,6.11,365843,70869";
复制代码

使用scrapy抓取股票代码相关推荐

  1. python scrapy 抓取脚本之家文章(scrapy 入门使用简介)

    老早之前就听说过python的scrapy.这是一个分布式爬虫的框架,可以让你轻松写出高性能的分布式异步爬虫.使用框架的最大好处当然就是不同重复造轮子了,因为有很多东西框架当中都有了,直接拿过来使用就 ...

  2. scrapy抓取淘宝女郎

    scrapy抓取淘宝女郎 准备工作 首先在淘宝女郎的首页这里查看,当然想要爬取更多的话,当然这里要查看翻页的url,不过这操蛋的地方就是这里的翻页是使用javascript加载的,这个就有点尴尬了,找 ...

  3. 解决Scrapy抓取中文网页保存为json文件时中文不显示而是显示unicode的问题

    注意:此方法跟之前保存成json文件的写法有少许不同之处,注意区分 情境再现: 使用scrapy抓取中文网页,得到的数据类型是unicode,在控制台输出的话也是显示unicode,如下所示 {'au ...

  4. scrapy抓取的中文结果乱码解决办法

    使用scrapy抓取的结果,中文默认是Unicode,无法显示中文. 中文默认是Unicode,如:\u5317\u4eac\u5927\u5b66 解决办法,原文:http://www.aisun. ...

  5. scrapy抓取淘宝女郎 1

    scrapy抓取淘宝女郎 准备工作 首先在淘宝女郎的首页这里查看,当然想要爬取更多的话,当然这里要查看翻页的url,不过这操蛋的地方就是这里的翻页是使用javascript加载的,这个就有点尴尬了,找 ...

  6. 使用scrapy抓取博客信息

    使用scrapy抓取博客信息 本文使用python的爬虫工具scrapy获取博客园发布的文档的信息. 创建cnblog爬虫项目: scrapy startproject cnblog 创建爬虫cnbl ...

  7. 逆向爬虫18 Scrapy抓取全站数据和Redis入门

    逆向爬虫18 Scrapy抓取全站数据和Redis入门 一.全站数据抓取 1. 什么是抓取全站数据? 我们曾经在过猪八戒,图片之家,BOSS直聘等网站,利用网站官方提供的搜索功能,搜索指定关键词的内容 ...

  8. 使用scrapy抓取传智播客c/c++讲师信息

    实验一.scrapy爬虫 一.实验目的 1.数据抓取之网络爬虫. 2.scrapy的使用方法,能使用scrapy抓取网页数据. 二.能力图谱 三.实验内容 1.内容:爬取传智播客C/C++讲师的姓名. ...

  9. python爬虫框架:scrapy抓取企业名录

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资 ...

最新文章

  1. 提升开发效率的一款mybatis开发神器
  2. iebook 发布到网站 独家秘诀
  3. Office 365系列(3)------Office 365认证使用ADFS安装部署参考
  4. CCF201803-1 跳一跳(序列处理)
  5. java字符串根据空格截取并存进list,并在每个元素前后加上/
  6. 基于NVIDIA显卡的硬编解码的一点心得 (完结)
  7. NRF51 BOOTLOADER 编译注意事项
  8. 守护进程nohup的用法
  9. java sha1_java使用SHA1加密算法详解
  10. 数据可视化系列(六):场景案例显神通
  11. XSS-Game level 7
  12. 分区起始位置参数溢出_IIS6.0缓冲区溢出漏洞深度分析(CVE-2017-7269)
  13. js正则去掉头尾空白符
  14. 记一次USB声卡设计开发
  15. 【算法学习】四 二分法查找(折半法或者折半查找)
  16. 【机器学习之向量求导】分子布局 分母布局
  17. C#汉字转换拼音技术详解
  18. python 画k线_使用matplotlib绘制k线图
  19. JMeter 配置元件-CSV Data Set Config 参数化配置
  20. 网线和水晶头的分类(这是真的不知道还有这样的区别)

热门文章

  1. AI制药来了!新药研发或告别“十年磨一剑”
  2. 德鲁克管理31条金句
  3. 当前(2019年)机器学习中有哪些研究方向特别的坑?
  4. 微软发布史上最大NLG模型:基于Transformer架构,170亿参数加持
  5. NeurIPS提前看 | 四篇论文,一窥元学习的最新研究进展
  6. Facebook创建新机器学习系统,用于对视频中的人脸进行“去识别化”
  7. Python中函数为什么可以当做参数使用?
  8. Python 之父:救救中国程序员
  9. OpenAI联合创始人:AI的极限?我真的不知道!
  10. SAP WM LPK1 不能把 cross-material control cycles定义成release order parts