Scrapy中如何实现向Spider传入参数-创新互联-成都创新互联网站建设

关于创新互联

多方位宣传企业产品与服务 突出企业形象

公司简介 公司的服务 荣誉资质 新闻动态 联系我们

Scrapy中如何实现向Spider传入参数-创新互联

今天就跟大家聊聊有关Scrapy中如何实现向Spider传入参数,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

创新互联专注为客户提供全方位的互联网综合服务,包含不限于做网站、网站制作、浏阳网络推广、重庆小程序开发、浏阳网络营销、浏阳企业策划、浏阳品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们大的嘉奖;创新互联为所有大学生创业者提供浏阳建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com

在使用Scrapy爬取数据时,有时会碰到需要根据传递给Spider的参数来决定爬取哪些Url或者爬取哪些页的情况。

例如,百度贴吧的放置奇兵吧的地址如下,其中 kw参数用来指定贴吧名称、pn参数用来对帖子进行翻页。

/tupian/20230522/f scrapy crawl 命令的 -a 参数向 spider 传递参数。

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

class TiebaSpider(scrapy.Spider):
  name = 'tieba' # 贴吧爬虫
  allowed_domains = ['tieba.baidu.com'] # 允许爬取的范围
  start_urls = [] # 爬虫起始地址

  # 命令格式: scrapy crawl tieba -a tiebaName=放置奇兵 -a pn=250
  def __init__(self, tiebaName=None, pn=None, *args, **kwargs):
    print('< 贴吧名称 >: ' + tiebaName)
    super(eval(self.__class__.__name__), self).__init__(*args, **kwargs)
    self.start_urls = ['/tupian/20230522/f % (tiebaName,pn)]

  def parse(self, response):
    print(response.request.url) # 结果:/tupian/20230522/f            
本文标题:Scrapy中如何实现向Spider传入参数-创新互联
转载源于:http://kswsj.cn/article/degopj.html