Scrpay-动态页面爬取

本文介绍了如何使用Scrapy 2.0配合Pyppeteer处理动态页面的爬取。随着JavaScript渲染页面的增多,Scrapy通过集成Selenium或Pyppeteer实现动态内容的抓取。以一个带有分页功能的示例网站为例,详细阐述了创建Scrapy项目、安装Pyppeteer中间件、配置中间件、修改Spider请求以及设置Pyppeteer的Headless模式为false的过程。最后,展示了如何对爬取内容进行标签化处理。
摘要由CSDN通过智能技术生成

Scrapy 使用2.0

动态页面处理

Scrapy发起Request后,返回的response中往往包含了结果。如今,越来越多的网页变为经过JavaScript渲染的页面,Scrapy可以和Selenium或者Pyppeteer这类库融合使用来实线渲染页面的抓取。

案例:

实例网站: https://dynamic5.scrape.center/

该示例网站带分页功能,只需要在URL上加上/page/页码就可以跳转到下一页。

新建项目:

scrapy startproject scrapypyppeteer

进入项目,新建Spider book

cd scrapypyppeteer
scrapy genspider book dynamic5.scrape.center

修改Spider文件夹下名为spider.py的文件:

# -*- coding: utf-8 -*-

import scrapy

class BookSpider(scrapy.Spider):
    name = 'book'
    allowed_domains = ['dynamic5.scrape.center']
    base_url = 'http://dynamic5.scrape.center/page/{page}'
    max_page=10
    
    def start_requests(self):
    	for page in range(1,self.max_page+1):
    		url=self.base_url.format(page=page)
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值