爬虫学习总结五

本文介绍了如何使用Python的Scrapy框架爬取京东图书网站的大分类、小分类及图书信息,包括网页分析、项目创建、大分类和小分类信息爬取、图书详细信息抓取,以及如何处理价格数据和实现翻页功能。最终成功爬取了39467条图书信息,并预计全站数据约为800万条。
摘要由CSDN通过智能技术生成

1. 网页分析

首先我们打开京东图书的网站:https://book.jd.com/booksort.html
里面加粗的字体是图书的大分类信息,下面是每个大分类下的小分类信息,点击每个小分类链接,可以看到相关分类下的图书信息。

2. 项目创建

打开CMD,切换到你想要保存项目的文件夹,输入scrapy stratproject JingDongBook(项目名)来创建项目,然后根据提示切换到项目内,输入scrapy genspider jdbook(爬虫名) jd.com(域名)来创建爬虫并设置域名。

3. 大分类信息爬取

这里直接将items也放到jdbook.py爬虫文件中来定义,items.py不做修改。具体代码如下:

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

class JdbookSpider(scrapy.Spider):
    name = 'jdbook'
    allowed_domains = ['jd.com']
    start_urls = ['https://book.jd.com/booksort.html']

    def parse(self, response):
        dt_list = response.xpath("//div[@class='mc']/dl/dt")
        for dt in dt_list:
            item = {
   }
            item['cate_b'] = dt.xpath("./a/text()").extract_first()  # 大分类

爬虫的结果为:
pic1

4. 小分类信息爬取

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

class JdbookSpider(scrapy.Spider):
    name = 'jdbook'
    allowed_domains = ['jd.com']
    start_urls = ['https://book.jd.com/booksort.html']

    def parse(self, response):
        dt_list = response.xpath("//div[@class='mc']/dl/dt")
        for dt in dt_list:
            item = {
   }
            item['cate_b'] = dt.xpath("./a/text()").extract_first()  # 大分类
            #yield item
            dd_list = dt.xpath("./following-sibling::dd[1]/em")
            
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值