我目前正在使用 Scrapy 从不同网站抓取一些域,我想知道如何将数据保存在本地 json 文件中,格式为列表或字典,其中键为“domain”,域列表为值。
在爬虫文件中,该项是这样的:
item['domain'] = 'xxx'.extract()
yield item
import json
import codecs
class ChinazPipeline(object):
def __init__(self):
self.file = codecs.open('save.json', 'w', encoding='utf-8')
def process_item(self, item, spider):
line = json.dumps(dict(item), ensure_ascii=False) + "\n"
self.file.write(line)
return item
Run Code Online (Sandbox Code Playgroud)
我期望的是:
{"domain": "['google.com', 'cnn.com', 'yahoo.com']"}
Run Code Online (Sandbox Code Playgroud)
或者只是将我爬取的所有域保存为 json 中的列表,两种方式都适合我。