📜  scrapy 创建项目 - Python (1)

📅  最后修改于: 2023-12-03 15:34:52.306000             🧑  作者: Mango

使用Scrapy创建项目

Scrapy是一个用于爬取数据的Python框架,它可以帮助我们快速、高效地从Web上获取数据。本篇文章将介绍如何使用Scrapy创建一个项目。

安装Scrapy

在使用Scrapy之前,需要先安装它。可以使用以下命令安装Scrapy:

pip install scrapy
创建一个Scrapy项目

使用以下命令在当前目录下创建一个名为myproject的Scrapy项目:

scrapy startproject myproject

命令说明:

scrapy - 表示使用Scrapy命令。

startproject - 表示创建一个Scrapy项目。

myproject - 表示项目名称。

项目结构说明

创建完Scrapy项目后,会在当前目录下生成一个名为myproject的文件夹。该文件夹下包含以下文件和文件夹:

  • myproject
    • spiders - 存放爬虫代码
    • items.py - 定义数据结构
    • middlewares.py - 定义中间件,用于处理请求和响应
    • pipelines.py - 定义管道,用于处理爬取到的数据
    • settings.py - 项目设置文件
创建一个爬虫

在Scrapy项目中,爬虫是用于定义如何爬取某个网站的代码。可以使用以下命令在myproject/spiders目录下创建一个名为example.py的爬虫:

scrapy genspider example example.com

命令说明:

scrapy - 表示使用Scrapy命令。

genspider - 表示生成爬虫。

example - 表示爬虫名称。

example.com - 表示爬取的域名。

执行完以上命令后,会在myproject/spiders目录下生成一个example.py文件。

编写爬虫代码

example.py文件中,可以编写如何爬取网站的代码。以下是一个简单的爬虫示例:

import scrapy


class ExampleSpider(scrapy.Spider):
    name = 'example'
    allowed_domains = ['example.com']
    start_urls = ['http://www.example.com']

    def parse(self, response):
        title = response.css('h1::text').get()
        yield {'title': title}

代码说明:

name - 表示爬虫名称。

allowed_domains - 表示可以爬取的域名。

start_urls - 表示起始URL。

parse - 表示如何处理响应。

以上代码爬取http://www.example.com网站的标题,并将其作为字典返回。

运行爬虫

在编写好爬虫代码后,可以使用以下命令运行爬虫:

scrapy crawl example

命令说明:

scrapy - 表示使用Scrapy命令。

crawl - 表示运行爬虫。

example - 表示爬虫名称。

爬取完成后,可以在控制台看到爬取到的数据。

总结

本篇文章介绍了如何使用Scrapy创建一个项目,创建一个爬虫,编写爬虫代码,运行爬虫。希望对想学习Scrapy的程序员有所帮助。