Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 带嵌套数组的Scrapy_Python_Json_Web Scraping_Scrapy_Nested - Fatal编程技术网

Python 带嵌套数组的Scrapy

Python 带嵌套数组的Scrapy,python,json,web-scraping,scrapy,nested,Python,Json,Web Scraping,Scrapy,Nested,我是scrapy新手,希望了解如何在对象上进行刮取,以便输出到嵌套的JSON中。现在,我正在生成JSON,看起来像 [ {'a' : 1, 'b' : '2', 'c' : 3}, ] 我更喜欢这样: [ { 'a' : '1', '_junk' : [ 'b' : 2, 'c' : 3]}, ] ---我在\u junk子字段中放置了一些内容,以便稍后进行后期处理 myscrapername.py中解析器定义文件下的当前代码是 item['a'] = x item['

我是scrapy新手,希望了解如何在对象上进行刮取,以便输出到嵌套的JSON中。现在,我正在生成JSON,看起来像

[
{'a' : 1, 
'b' : '2',
'c' : 3},
]
我更喜欢这样:

[
{ 'a' : '1',
'_junk' : [
     'b' : 2,
     'c' : 3]},
]
---我在
\u junk
子字段中放置了一些内容,以便稍后进行后期处理

my
scrapername.py
中解析器定义文件下的当前代码是

item['a'] = x
item['b'] = y
item['c'] = z
看起来

item['a'] = x
item['_junk']['b'] = y
item['_junk']['c'] = z
---可能会解决这个问题,但我收到一个关于
\u junk
键的错误:

  File "/usr/local/lib/python2.7/dist-packages/scrapy/item.py", line 49, in __getitem__
    return self._values[key]
exceptions.KeyError: '_junk'
这是否意味着我需要以某种方式更改我的
items.py
?目前我有:

class Website(Item):
    a = Field()
    _junk = Field()
    b = Field()
    c = Field()

在将项目存储到垃圾字典之前,需要先创建垃圾字典

item['a'] = x
item['_junk'] = {}
item['_junk']['b'] = y
item['_junk']['c'] = z