Scrapy爬虫之网站图片爬取

本教程介绍了如何使用Scrapy爬虫框架来抓取指定网站上的图片链接,并将这些链接保存到本地文件images.txt中。通过审查元素分析图片链接的规律,然后在eduSpider.py文件的parse函数中编写代码,实现图片链接的爬取和保存。完成代码后,平台会进行测试,预期输出为'爬取成功'。
摘要由CSDN通过智能技术生成

第1关:爬取网站实训图片的链接

任务描述
本关任务:使用Scrapy爬取给定网站的图片链接,并保存到本地。

编程要求
首先,通过审查元素,观察图片链接的代码规律;然后,点击代码文件旁边的三角符号,选择文件eduSpider.py,如下图所示。在 Begin-End 区间补充代码,使函数 parse 能够爬取图片链接,并保存到本地文件images.txt中。
在这里插入图片描述

注:本实训评测系统的开发环境均已配置好。

测试说明
平台会对你编写的代码进行测试(本次测试无输入):

预期输出:

爬取成功
开始你的任务吧,祝你成功!

解析:
找到 代码文件 并点击,展开后长这个样子
在这里插入图片描述
点击 step1/web/index.html 后输入以下代码↓

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <div class="box">
        
        <div>
            <a href="/static/app1/imgs/1.png" target="_blank">
                <img src="/static/app1/imgs/1.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/10.png" target="_blank">
                <img src="/static/app1/imgs/10.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/11.png" target="_blank">
                <img src="/static/app1/imgs/11.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/12.png" target="_blank">
                <img src="/static/app1/imgs/12.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/13.png" target="_blank">
                <img src="/static/app1/imgs/13.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/14.png" target="_blank">
                <img src="/static/app1/imgs/14.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/15.png" target="_blank">
                <img src="/static/app1/imgs/15.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/16.png" target="_blank">
                <img src="/static/app1/imgs/16.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/17.png" target="_blank">
                <img src="/static/app1/imgs/17.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/18.png" target="_blank">
                <img src="/static/app1/imgs/18.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/19.png" target="_blank">
                <img src="/static/app1/imgs/19.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/2.png" target="_blank">
                <img src="/static/app1/imgs/2.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/20.png" target="_blank">
                <img src="/static/app1/imgs/20.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/21.png" target="_blank">
                <img src="/static/app1/imgs/21.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/22.png" target="_blank">
                <img src="/static/app1/imgs/22.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/23.png" target="_blank">
                <img src="/static/app1/imgs/23.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/24.png" target="_blank">
                <img src="/static/app1/imgs/24.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/25.png" target="_blank">
                <img src="/static/app1/imgs/25.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/3.png" target="_blank">
                <img src="/static/app1/imgs/3.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/4.png" target="_blank">
                <img src="/static/app1/imgs/4.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/5.png" target="_blank">
                <img src="/static/app1/imgs/5.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/6.png" target="_blank">
                <img src="/static/app1/imgs/6.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/7.png" target="_blank">
                <img src="/static/app1/imgs/7.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/8.png" target="_blank">
                <img src="/static/app1/imgs/8.png" alt="未显示">
            </a>
        </div>
        
        <div>
            <a href="/static/app1/imgs/9.png" target="_blank">
                <img src="/static/app1/imgs/9.png" alt="未显示">
            </a>
        </div>
        
    </div>
</body>
</html>

接着点击 代码文件 ,找到点击 step1/mySpider/mySpider/spiders/eduSpider.py后 输入以下代码↓

# -*- coding: utf-8 -*-
import scrapy

class EduspiderSpider(scrapy.Spider):
    name = 'eduSpider'
    allowed_domains = ['127.0.0.1']
    start_urls = ['http://127.0.0.1:8080/imgs/']

    def parse(self, response):
        #********** Begin **********#
        with open('images.txt','w') as f:
            img=response.xpath("//div[@class='box']/div/a/img/@src")
            f.write("{}\n".format(img))
        
        #********** End **********#

点击右下角 自测运行
在这里插入图片描述

提交即可

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值