返回时的错误response.meta []

时间:2013-12-02 20:34:37

标签: python scrapy

我正在运行下面的代码,代码似乎有一些问题。 下面显示的不是我的整个代码,如果有人问我,我会发布剩下的代码:

from threading import Thread 
from selenium import webdriver
from scrapy.http import Request
from urlparse import urlparse
from scrapy.spider import BaseSpider

class MySpider(BaseSpider):
    name = "scrapy"
    def get_url():
        url = raw_input('Enter the url of your website (including the http)')
        return url      
    start_url = str(get_url())
    def parse(self,response):
         return response



def get_depth():
    scrapies = MySpider()
    response= Request(scrapies.start_url)
    return response.meta['depth']

错误发生在return response.meta['depth']。错误消息没有特定的内容,它只是说key error: depth,所以我不知道如何解决这个问题。这是否意味着depth不适合meta

感谢..

1 个答案:

答案 0 :(得分:1)

您需要使用Yield调用get_depth并传递元值。请参阅下面的示例。

yield Request(url = someurl,callback = self.get_depth,meta = {'key':value},)