广告
返回顶部
首页 > 资讯 > 后端开发 > Python >scrapy入门
  • 573
分享到

scrapy入门

入门scrapy 2023-01-30 23:01:36 573人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

什么是scrapy? scrapy是一个为了爬去网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量的代码,就能够快速的抓取 scrapy使用了 Twisted 异步网络框架,可以加快我们的下载速度 异步和非阻塞的区别 异步:调用

什么是scrapy

scrapy是一个为了爬去网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量的代码,就能够快速的抓取

scrapy使用了 Twisted 异步网络框架,可以加快我们的下载速度

异步和非阻塞的区别

异步:调用在发布之后,这个调用就直接返回,不管有无结果
非阻塞:关注的是程序在等待调用结果(消息,返回值)时的状态,指在不能立刻得到结果之前,该调用不会阻塞当前线程

安装scrapy

直接安装可能会报错

  • 第一步 下载Twisted
    • 点击 https://www.lfd.uci.edu/~Gohlke/pythonlibs/
    • 搜索 Twisted 选择与你的Python版本相对应的版本
    • 查看python版本命令 python -V或着python -version
  • 第二步 安装Twisted
    • 进入到刚刚下载的Twisted所在的目录,执行 pip install Twisted‑18.9.0‑cp36‑cp36m‑win_amd64.whl(刚刚下载的文件)
  • 第三部 安装scrapy
    • pip install scrapy

scrapy项目流程

  • 创建项目
    • scrapy startproject 项目名
    • 如:scrapy startproject Myspider
  • 创建爬虫
    • cd 项目名
    • 如:cd Myspider
    • scrapy genspider <限制访问的网站(allowed_domains)>
    • 如:scrapy genspider itcast itcast.cn
  • 启动爬虫
    • scrapy crawl 爬虫名
    • 如:scrapy crawl itcast
  • 完善spider
  • 完善管道

完善spider

  • parse方法必须有,用来处理start_urls对应的响应
  • extract() response.xpath()从中提取数据的方法,没有就返回一个空列表

数据提取url地址补全

  • 1.手动字符串相加
  • 2.urllib.parse.urljoin(baseurl.url)
    • 后面的url会根据baseurl进行url地址的拼接
  • 3.response.follow(url, callback)
    • 能够根据response的地址把url拼接完整,构造成request对象

scrapy构造请求

  • scrapy.Request(url, callback, meta, dont_filter=False)
    • callback:url地址的响应的处理函数
    • meta:实现在不同的解析函数中传递数据
    • dont_filter:默认是Faslse表示过滤,scrapy请求过的url地址,在当前的运行程序中

      ---恢复内容结束---

      ### 什么是scrapy?
      scrapy是一个为了爬去网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量的代码,就能够快速的抓取

scrapy使用了 Twisted 异步网络框架,可以加快我们的下载速度

异步和非阻塞的区别

异步:调用在发布之后,这个调用就直接返回,不管有无结果
非阻塞:关注的是程序在等待调用结果(消息,返回值)时的状态,指在不能立刻得到结果之前,该调用不会阻塞当前线程

安装scrapy

直接安装可能会报错

  • 第一步 下载Twisted
    • 点击 Https://www.lfd.uci.edu/~gohlke/pythonlibs/
    • 搜索 Twisted 选择与你的python版本相对应的版本
    • 查看python版本命令 python -V或着python -version
  • 第二步 安装Twisted
    • 进入到刚刚下载的Twisted所在的目录,执行 pip install Twisted‑18.9.0‑cp36‑cp36m‑win_amd64.whl(刚刚下载的文件)
  • 第三部 安装scrapy
    • pip install scrapy

scrapy项目流程

  • 创建项目
    • scrapy startproject 项目名
    • 如:scrapy startproject Myspider
  • 创建爬虫
    • cd 项目名
    • 如:cd Myspider
    • scrapy genspider <限制访问的网站(allowed_domains)>
    • 如:scrapy genspider itcast itcast.cn
  • 启动爬虫
    • scrapy crawl 爬虫名
    • 如:scrapy crawl itcast
  • 完善spider
  • 完善管道

完善spider

  • parse方法必须有,用来处理start_urls对应的响应
  • extract() response.xpath()从中提取数据的方法,没有就返回一个空列表

数据提取url地址补全

  • 1.手动字符串相加
  • 2.urllib.parse.urljoin(baseurl.url)
    • 后面的url会根据baseurl进行url地址的拼接
  • 3.response.follow(url, callback)
    • 能够根据response的地址把url拼接完整,构造成request对象

scrapy构造请求

  • scrapy.Request(url, callback, meta, dont_filter=False)
    • callback:url地址的响应的处理函数
    • meta:实现在不同的解析函数中传递数据
    • dont_filter:默认是Faslse表示过滤,表示请求过的url地址,不会被再次请求

--结束END--

本文标题: scrapy入门

本文链接: https://www.lsjlt.com/news/180462.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • scrapy入门
    什么是scrapy? scrapy是一个为了爬去网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量的代码,就能够快速的抓取 scrapy使用了 Twisted 异步网络框架,可以加快我们的下载速度 异步和非阻塞的区别 异步:调用...
    99+
    2023-01-30
    入门 scrapy
  • python 之 scrapy 入门 (
    在网上浏览了众多scrapy入门教程 作为小白的我总结一下: 最重要的一点就是安装Scrapy 前提是安装好了Anaconda Navigator过后 简直是如履平地啊! 可以借鉴https://blog.csdn.net...
    99+
    2023-01-31
    入门 python scrapy
  • 爬虫——scrapy入门
    安装scrapy pip install scrapy windows可能安装失败,需要先安装c++库或twisted,pip install twisted 创建项目 scrapy startproject tuto...
    99+
    2023-01-30
    爬虫 入门 scrapy
  • scrapy入门学习(原理)
    什么是网络爬虫网络爬虫又称网页蜘蛛,网络机器人,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。如果有兴趣可查看百度百科网络爬虫网络蜘蛛(web spider)也叫网络爬虫,是一种'自动化浏览网络'的程序,或者说是...
    99+
    2023-01-30
    入门 原理 scrapy
  • Python爬虫框架scrapy入门指
    想爬点数据来玩玩, 我想最方便的工具就是Python scrapy了。 这框架把采集需要用到的功能全部封装好了,只要写写采集规则,其他的就交给框架去处理,非常方便,没有之一,不接受反驳。:) 网上学习资源非常丰富,我这里介绍下我的学习方法...
    99+
    2023-01-31
    爬虫 框架 入门
  • Scrapy简单入门及实例讲解
    Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中。其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的, 也可以应用在获取API所返回的数据(例如 A...
    99+
    2023-01-31
    实例 入门 简单
  • 如何入门Python Scrapy爬虫框架
    如何入门Python Scrapy爬虫框架,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Scrapy概述Scrapy是Python开发的一个非常流行的网络爬虫框架,可以用来...
    99+
    2023-06-02
  • Python中Scrapy框架的入门教程分享
    目录前言安装Scrapy创建一个Scrapy项目创建一个爬虫运行爬虫结论前言 Scrapy是一个基于Python的Web爬虫框架,可以快速方便地从互联网上获取数据并进行处理。它的设计...
    99+
    2023-03-10
    Python Scrapy框架教程 Python Scrapy框架 Python Scrapy
  • python爬虫入门之Scrapy框架怎么用
    这篇文章将为大家详细讲解有关python爬虫入门之Scrapy框架怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,P...
    99+
    2023-06-14
  • Python抓取框架Scrapy爬虫入门:页面提取
    前言 Scrapy是一个非常好的抓取框架,它不仅提供了一些开箱可用的基础组建,还能够根据自己的需求,进行强大的自定义。本文主要给大家介绍了关于Python抓取框架Scrapy之页面提取的相关内容,分享出来供...
    99+
    2022-06-04
    爬虫 框架 入门
  • Python的爬虫程序编写框架Scrapy入门学习教程
    1. Scrapy简介 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。 其最初是为了页面抓取 (更确切来说, 网络抓取...
    99+
    2022-06-04
    爬虫 框架 入门
  • scrapy深入学习----(3)
    最新版本 0.10.我们可以通过scrapy命令行工具来控制Scrapy, 这里我们使用了“Scrapy tool”这么一个词,用来区分他们的子命令,那些通常我们称为 “commands”,或者 “Scrapy commands”.处于各种...
    99+
    2023-01-31
    scrapy
  • golang入门难不难?怎么入门?
    从一位刚刚开始学习Golang的小白的角度出发,Golang入门难不难的问题一直让我非常纠结。一方面,Golang作为一门新兴的编程语言,其设计理念和语法都比传统的编程语言有所不同,对于新手来说,学习曲线会相对较陡。另一方面,由于Golan...
    99+
    2023-05-14
  • h3c入门
                                                        h3c华三入门    我们都知道路由器和交换机的著名品牌排行cisco  华为 h3c华三  TPlink  锐捷  等,其中比较常用的...
    99+
    2023-01-31
    入门 h3c
  • SpringBoot入门
    springboot入门 一.SpringBoot概述1.1 SpringBoot1.2 Spring缺点1.3 SpringBoot功能 2.SpringBoot快速入门2.1 经典开局Hello World2.1.1 新建项...
    99+
    2023-08-30
    spring boot java 后端
  • <C++> 入门
    在学习完C语言的基础上,继续开始C++的学习。 C++是在C的基础之上,容纳进去了面向对象编程思想,并增加了许多有用的库,以及编程范式等。熟悉C语言之后,对C++学习有一定的帮助。 1. 补充C语言语法的不足,以及C++是如何对C语言设...
    99+
    2023-08-16
    c++
  • Centos7 入门
    Centos7 入门 目录 Centos7 入门1.3.注意事项创建虚拟机系统安装2.3.远程连接2.3.1.安装FinalShell 3.设置IP、网关、DNS、镜像3.1.设...
    99+
    2023-10-24
    linux 服务器 centos
  • NOSQL入门
    什么是NoSQL NoSQL (Not Only SQL),指的是非关系型的数据库。是对不同于传统的关系型数据库的数据库管理系统的统称。 轻量、开源、不提供SQL功能的关系数据库。 NoSQL用于超大规模数据的存储。数据存储不需要固...
    99+
    2014-05-13
    NOSQL入门
  • Mysql入门
    一、数据库概述 1、为什么要用数据库? 程序中的数据是在内存中,一旦程序关了,数据就没了,没法永久保存。 所以我们需要把数据“持久化”。 我们虽然学过IO流和File类,可以实现数据的持久化,但是用普通的文件保存的话 数据的格式 检索、管...
    99+
    2014-06-01
    Mysql入门
  • 18Oracle入门
    1 Oracle的服务 Oracle的监听服务:OralceOraDB12Home1TNSListener 需要通过程序链接数据库进行开发的时候,此服务必须打开,如果只是在本机使用,此服务可不启动 Oracle 的实例服务:OracleS...
    99+
    2019-02-11
    18Oracle入门
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作