Python批量爬取游戏卡牌信息

本文详细介绍了如何利用Python的Scrapy框架,结合Xpath解析工具,爬取游戏卡牌的全站信息。文章涵盖了需求分析、Scrapy项目的初始化、爬虫编写(包括标题和图片URL的提取以及翻页功能实现)、图片资源的处理(通过ImagePipeline保存图片)以及使用中间件实现随机UA和代理。此外,还提供了源码下载链接。

在这里插入图片描述

前言

  1. 本系列文章来源于真实的需求
  2. 本系列文章你来提我来做
  3. 本系列文章仅供学习参考
  4. 阅读人群:有Python基础、Scrapy框架基础

一、需求

  • 全站爬取游戏卡牌信息

在这里插入图片描述

二、分析

  • 查看网页源代码,图片资源是否存在

在这里插入图片描述

  • 网页源码中,定位下一页url路径

在这里插入图片描述

整体思路
1、通过Scrapy框架(中间件随机UA、代理)
2、通过Xpath构造单页爬取
3、通过Xpath定位下一页实现翻页功能

三、处理

初始化Scrapy框架

  1. Pycharm创建项目
  2. 安装Scrapy第三方库 pip install scrapy==2.5.1
  3. 创建项目 scrapy startproject card
  4. 进入card目录 cd card
  5. 创建爬虫 scrapy genspider get_card shadowverse-portal.com
  6. 修改start_urls
    在这里插入图片描述

编写get_card 文件
1、获取标题和图片url
2、翻页功能

    def parse(self, response):
        # 获取标题和图片url
        display = response.xpath("//div[@id='displayVisual']")
        for d in display:
            img_url = d.xpath("//img[@class='el-card-visual-image js-card-image lazyload']/@data-src").extract()
            title = d.xpath("//img[@class='el-card-visual-image js-card-image lazyload']/@alt").extract()
            img_url_dict = dict(zip(title, img_url))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值