• scrapy模块的基础使用


    scrapy模块是爬虫工作者最常用的一个模块之一,因它有许多好用的模板,和丰富的中间件,深受欢迎。

    一,scrapy的安装

    可以通过pypi的指引进行安装

    在终端内输入以下代码:

    pip install scrapy

    二,项目的建立

    安装程序后,创建自己项目,在终端中输入以下代码

    scrapy startproject yourprojectname

    运行完成后,在终端中会提示你执行以下两个命令

    需要依次执行

    cd yourprojectname

    创建你的爬虫模板 

    scrapy genspider name name.com

    name --根目录的名字, name.com --()域名

    创建好之后,在pycharm中可以看到以下的目录:

    在name.py中编写爬虫项目,name.py文件中会自带以下代码

    1. import scrapy
    2. class NameSpider(scapy.Spider):
    3. name = "name"
    4. start_urls = [url, url....]
    5. def parse(self, response):
    6. pass

    其中name为爬取数据的名字,自定义。

    此外还要加入要爬取的链接列表。

    pase方法为爬取数据的逻辑

    使用命令来启动爬虫程序(在终端运行以下代码)

    scapy crawl name

    也可新建一个文件,运行文件来启动爬虫程序,代码如下:

    1. from scrapy import cmdline
    2. cmdline.execute("scapy crawl name".split())

    split()方法将其分割,因为在cmdline中是一个数组

    也可将爬虫日志写入在文件中,避免输出在终端时,因终端可显示的长度有限,显示不完全。代码如下:

    1. from scrapy import cmdline
    2. cmdline.execute("scapy crawl name --logfile name.log".split())

    爬取好的数据可以通过items.py文件中进行配置

    将想要的数据进行保存

    1. import scrapy
    2. class HaodaifuItem(scrapy.Item):
    3. # define the fields for your item here like:
    4. # name = scrapy.Field()

    存储的项目通过进入piplines.py文件中(pipelines.py在settings中默认不开启,需要手动开启 )

    1. # Configure item pipelines
    2. # See https://docs.scrapy.org/en/latest/topics/item-pipeline.html
    3. # 项目管道
    4. ITEM_PIPELINES = {
    5. "xxx.pipelines.Pipeline": 300,
    6. "xxx.pipelines.xxxPipeline":300,
    7. }

    pipslines.py文件中的项目名:数值

    数值越小,优先级越高,越先启动,数值相同他们的启动顺序将是随机的,无法确定哪一个会先启动。在这种情况下,scrapy将根据实际情况来决定启动顺序。

  • 相关阅读:
    19-CSS弹性盒布局
    Android | ListView 长按删除列表项【学习笔记】
    面向城市复杂系统的社会计算关键技术研究
    定制SQLmap和WAF绕过
    心法利器[102] | 大模型落地应用架构的一种模式
    Linux CP文件夹略过目录的解决
    Kafka3.0.0版本——Leader故障处理细节原理
    vue的生命周期的相关问题
    联想集团:长期前景稳定,业务转型正在提高盈利能力
    YGG GAP 第一季 NFT 背后的设计理念
  • 原文地址:https://blog.csdn.net/li2437948121/article/details/139514800