Python 如何访问parse方法中的对象?

Python 如何访问parse方法中的对象?,python,web-scraping,scrapy,web-crawler,scrapy-spider,Python,Web Scraping,Scrapy,Web Crawler,Scrapy Spider,我不知道如何访问parse函数中的对象。 我想创建一个对象检查,它需要创建产品对象products属性是作为url源的对象列表 class GenericScraper(scrapy.Spider): name = 'will_be_overriden' custom_settings = {'CONCURRENT_REQUESTS': 32, 'DOWNLOAD_DELAY':0.5} def __init__(self,

我不知道如何访问
parse
函数中的对象。 我想创建一个对象
检查
,它需要创建
产品
对象
products
属性是作为
url
源的对象列表

class GenericScraper(scrapy.Spider):
    name = 'will_be_overriden'
    custom_settings = {'CONCURRENT_REQUESTS': 32,
                       'DOWNLOAD_DELAY':0.5}
    def __init__(self, occs):
        super(GenericScraper,self).__init__()
        self.name = products[0].site.name
        self.products = products
        self.xpath = self.product[0].site.xpaths.first().xpath

    def start_requests(self):
        for product in self.products:
            yield scrapy.Request(url=product.url, callback=self.parse)

    def parse(self, response):
        hxs = HtmlXPathSelector(response)
        text = hxs.select(self.xpath+'/text()').extract()
        Check.objects.create(text=text,product=product) # CAN'T ACCESS CURRENT PRODUCT

        responselog.debug(response)
是否可能?

使用在回调之间进行通信。我假设您希望将
产品
对象与您提出的每个请求相关联,例如:

def start_requests(self):
    for product in self.products:
        yield scrapy.Request(
            url=product.url, 
            callback=self.parse, 
            meta={'product': product},
        )

def parse(self, response):
    current_product = response.meta['product']
    ...
使用在回调之间进行通信。我假设您希望将
产品
对象与您提出的每个请求相关联,例如:

def start_requests(self):
    for product in self.products:
        yield scrapy.Request(
            url=product.url, 
            callback=self.parse, 
            meta={'product': product},
        )

def parse(self, response):
    current_product = response.meta['product']
    ...