【安全合规】python爬虫从0到1-Scrapy框架的介绍

简介: 我们可以更快速,更方便的获取到网页上的内容和我们想要的数据。

文章目录

前言

(一)什么是Scrapy

(二)基本功能

(三)基本架构

(四)Scrapy框架的基本使用

(1)创建爬虫的项目

(2)创建爬虫的文件

(3)执行爬虫文件

(五)Scrapy中response的属性和方法

1.获取响应的字符串

2.获取二进制数据

3.利用xpath获取内容

4.获取seletor对象的属性值

5.获取seletor列表的第一个数据

前言

现在我们进入一个框架的学习,利用好这个框架,我们可以更快速,更方便的获取到网页上的内容和我们想要的数据。这个框架就是Scrapy框架。


(一)什么是Scrapy

Scrapy是适用于Python的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。


(二)基本功能

Scrapy是一个适用爬取网站数据、提取结构性数据的应用程序框架,它可以应用在广泛领域:Scrapy 常应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。通常我们可以很简单的通过 Scrapy 框架实现一个爬虫,抓取指定网站的内容或图片。


(三)基本架构


下面是scrapy框架的官方架构图。绿色箭头为数据流向。image.pngimage.png

(四)Scrapy框架的基本使用

当我们用scrapy框架创建一个项目的时候我们都需要在控制台(终端)输入命令来创建/执行一个项目或者一个爬虫文件。

(1)创建爬虫的项目

在终端输入创建项目的指令image.pngimage.png

(2)创建爬虫的文件

这里需要在spiders文件夹中创建爬虫文件,所以在创建爬虫文件前需要将目录转换到spiders目录下image.png随后创建爬虫文件image.png实例:image.png

(3)执行爬虫文件

同样,运行爬虫文件时,也是需要在终端上输入指令的image.png实例:image.png注:在执行爬虫文件的时候,存在robot协议即君子协议。每个网站都制定了君子协议,使得不能让其他网站爬取网页数据,因此我们需要在配置文件中将robot协议注释掉才可以获得网页内容。image.png

(五)Scrapy中response的属性和方法

1.获取响应的字符串image.png2.获取二进制数据image.png3.利用xpath获取内容

直接利用xpath语法来解析response中的内容image.png

4.获取seletor对象的属性值image.png

5.获取seletor列表的第一个数据

image.png

相关文章
|
19天前
|
数据采集 存储 XML
Python爬虫定义入门知识
Python爬虫是用于自动化抓取互联网数据的程序。其基本概念包括爬虫、请求、响应和解析。常用库有Requests、BeautifulSoup、Scrapy和Selenium。工作流程包括发送请求、接收响应、解析数据和存储数据。注意事项包括遵守Robots协议、避免过度请求、处理异常和确保数据合法性。Python爬虫强大而灵活,但使用时需遵守法律法规。
|
20天前
|
数据采集 缓存 定位技术
网络延迟对Python爬虫速度的影响分析
网络延迟对Python爬虫速度的影响分析
|
21天前
|
数据采集 Web App开发 监控
高效爬取B站评论:Python爬虫的最佳实践
高效爬取B站评论:Python爬虫的最佳实践
|
28天前
|
数据采集 存储 JSON
Python网络爬虫:Scrapy框架的实战应用与技巧分享
【10月更文挑战第27天】本文介绍了Python网络爬虫Scrapy框架的实战应用与技巧。首先讲解了如何创建Scrapy项目、定义爬虫、处理JSON响应、设置User-Agent和代理,以及存储爬取的数据。通过具体示例,帮助读者掌握Scrapy的核心功能和使用方法,提升数据采集效率。
79 6
|
22天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
64 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
11天前
|
缓存 API 数据库
Python哪个框架合适开发速卖通商品详情api?
在跨境电商平台速卖通的商品详情数据获取与整合中,Python 语言及其多种框架(如 Flask、Django、Tornado 和 FastAPI)提供了高效解决方案。Flask 简洁灵活,适合快速开发;Django 功能全面,适用于大型项目;Tornado 性能卓越,擅长处理高并发;FastAPI 结合类型提示和异步编程,开发体验优秀。选择合适的框架需综合考虑项目规模、性能要求和团队技术栈。
24 2
|
22天前
|
数据采集 存储 JSON
Python爬虫开发中的分析与方案制定
Python爬虫开发中的分析与方案制定
|
27天前
|
数据采集 JSON 测试技术
Python爬虫神器requests库的使用
在现代编程中,网络请求是必不可少的部分。本文详细介绍 Python 的 requests 库,一个功能强大且易用的 HTTP 请求库。内容涵盖安装、基本功能(如发送 GET 和 POST 请求、设置请求头、处理响应)、高级功能(如会话管理和文件上传)以及实际应用场景。通过本文,你将全面掌握 requests 库的使用方法。🚀🌟
45 7
|
26天前
|
数据采集 Web App开发 JavaScript
爬虫策略规避:Python爬虫的浏览器自动化
爬虫策略规避:Python爬虫的浏览器自动化
|
26天前
|
数据采集 存储 XML
Python实现网络爬虫自动化:从基础到实践
本文将介绍如何使用Python编写网络爬虫,从最基础的请求与解析,到自动化爬取并处理复杂数据。我们将通过实例展示如何抓取网页内容、解析数据、处理图片文件等常用爬虫任务。
141 1