python爬虫Scrapy框架的了解

1.什么是框架

框架就像建房子的地基
不再需要关注底层的东西
直接在地基上面利用 工程化的方法建造房子

框架(Framework)是一种编程模型,它为开发人员提供了一组通用的工具、库和规范,以便更快、更高效地开发应用程序。框架通常包括一些预定义的模块、类和函数,以及一些规范和标准,以确保开发人员在开发应用程序时能够遵循一致的设计原则和最佳实践。

框架可以帮助开发人员减少重复性的工作,提高代码质量和可维护性,同时也可以加速开发进程。常见的框架包括Web框架、移动应用程序框架、游戏开发框架等等

2.常见的python爬虫框架

常见的Python爬虫框架包括:Scrapy PySpide
其他的属于爬虫实现功能的工具库

Scrapy:一个高级的Python爬虫框架,用于快速开发和部署爬虫。

Beautiful Soup:一个用于解析HTML和XML文档的Python库,常用于爬虫中的网页解析。

Requests:一个Python HTTP库,用于发送HTTP请求和处理响应。

Selenium:一个自动化Web测试工具,可以用于爬虫中模拟浏览器行为。

PyQuery:一个类似于jQuery的Python库,用于解析HTML文档。

BeautifulSoup4:一个用于解析HTML和XML文档的Python库,支持多种解析器。

PySpider:一个基于Python的分布式爬虫框架,支持多种数据存储和消息队列。

Crawlera:一个Python爬虫框架,用于处理代理和反爬虫问题。

以下是一些关于这些框架的链接:

Scrapy:https://scrapy.org/

Beautiful Soup:https://www.crummy.com/software/BeautifulSoup/bs4/doc/

Requests:https://requests.readthedocs.io/en/master/

Selenium:https://www.selenium.dev/documentation/en/

PyQuery:https://pythonhosted.org/pyquery/

BeautifulSoup4:https://www.crummy.com/software/BeautifulSoup/bs4/doc/

PySpider:https://docs.pyspider.org/en/latest/

Crawlera:https://support.scrapinghub.com/support/solutions/articles/22000200424-crawlera-faq

3.Scrapy框架介绍

Scrapy是一个用于爬取网站数据的Python框架。它提供了许多工具和库,使得爬取网站数据变得简单和高效。Scrapy框架可以自动化地从网站上爬取数据,然后将数据存储到本地或者其他地方,例如数据库中。

Scrapy框架的特点包括:

高效:Scrapy框架使用异步网络库Twisted,可以同时处理多个请求,从而提高爬取效率。

可扩展:Scrapy框架使用插件式架构,可以方便地添加新的功能和扩展。

灵活:Scrapy框架提供了许多配置选项,可以自定义爬取规则和数据处理流程。

易用:Scrapy框架提供了丰富的文档和示例,使得初学者也可以轻松上手。

Scrapy框架的基本组件包括:

Spider:爬虫,用于定义爬取规则和处理网页数据。

Item:数据项,用于定义要爬取的数据结构。

Pipeline:管道,用于处理爬取到的数据。

Downloader:下载器,用于下载网页内容。

Scheduler:调度器,用于管理爬虫请求的优先级和顺序。

Scrapy框架的使用流程包括:

定义Spider,定义要爬取的网站URL和数据处理规则。

运行Spider,Scrapy框架会自动下载网页内容并根据规则提取数据。

将数据存储到本地或者其他地方,例如数据库中。

搭建Scrapy环境

安装Python
首先需要安装Python,建议安装Python 3.x版本。可以从官网下载安装程序:https://www.python.org/downloads/

安装pip
pip是Python的包管理工具,用于安装和管理Python的第三方库。可以通过以下命令安装pip:

python get-pip.py

安装Scrapy
使用pip安装Scrapy:

pip install scrapy

安装Twisted
Scrapy依赖于Twisted,需要先安装Twisted:

pip install twisted

安装lxml
Scrapy使用lxml来解析HTML和XML文档,需要先安装lxml:

pip install lxml

安装pyOpenSSL
Scrapy使用pyOpenSSL来支持HTTPS请求,需要先安装pyOpenSSL:

pip install pyOpenSSL

安装cssselect
Scrapy使用cssselect来解析CSS选择器,需要先安装cssselect:

pip install cssselect

安装pywin32
如果使用的是64位的Python,需要安装pywin32:

pip install pywin32

方法二 使pycharm 开发工具
在这里插入图片描述

import scrapy

# 创建python文件
# 导入信息  会提示不存在
# 鼠标放上去 会提示下载

方式三
在这里插入图片描述
命令行提示如下信息
在这里插入图片描述

创建scrapy工程

在要创建的文件夹下面输入

 scrapy startproject firstbloodscrapy

scrapy startproject 是固定的 firstbloodscrapy是爬虫项目的名字

就会创建如下信息
在这里插入图片描述

在工程下新建爬虫文件

cd 到爬虫的工程目录下
tab 键 可以补全路径

 cd .\firstbloodscrapy\

创建爬虫文件

scrapy genspider firstweb www.xxx.com
scrapy genspider 固定
firstweb  爬虫文件名字 
www.xxx.com  爬取地址

创建后会 在 项目中显示

在这里插入图片描述

在这里插入图片描述

文件介绍

import scrapy


class FirstwebSpider(scrapy.Spider):
    # name 文件名称 项目的唯一标识
    name = "firstweb"
    # 允许的域名 限制start_urls中 可以通行的链接 常常禁用
    # allowed_domains = ["www.xxx.com"]
    # 开始的url  可以存放多个
    start_urls = ["https://www.baidu.com/"]

    # 响应数据  请求的数据会放到response
    def parse(self, response):
        print(response)
        pass

执行爬虫文件

scrapy crawl   firstweb
scrapy crawl 固定
firstweb 爬虫的唯一标识 name

为了获得数据请关闭
settings.py

# Obey robots.txt rules
ROBOTSTXT_OBEY = False

在这里插入图片描述

scrapy crawl   firstweb  --nolog
可以取消 日志打印 只显示 数据

或者在
settings.py 添加这个

LOG_LEVEL = "ERROR"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值