2016-05-13 63 views
1

我使用的是飞溅scrapy,在我闪我可以给多个值,但在我scrapy代码,我无法处理all.for例如处理多个返回值, 这是我泼的脚本如何scrapy从飞溅

splash_script = """ 
    function main(splash) 
     local url = splash.args.url 
     return { 
     html = splash:html(), 
     number = 1 
     } 
    end 
    """ 

从scrapy的方法触发飞溅

​​

回叫方法

def product_details(self,response): 
    print response.body 

此方法只接收HTML内容,我不能看到号码

回答

1

您正在打印response.body。这只包括html。

你必须使用response.data看到1

您也可以单独访问的元素:

response.data['html'] 

response.data['number'] 

,当返回的东西,请确保您在退货声明中指定它:

否T-

html = splash:html() 
number = 1 
return {number,html} 

return {number = 1, html = splash:html()} 

基本上,你必须分配JSON键,即使你可能有这样做外return语句。 额外的信息,但这真的让我感到困扰,你可能会遇到同样的问题。