Scrapy基礎(十一)————導出數據到json文件中



  之前介紹過將數據寫入mysql數據庫中,但是對於那些沒有數據庫的,可以通過寫入json文件中
或者是寫入到csv或者xls;這里只介紹寫入json文件中,也為再練習一下自定義的pipeline

思路:    

    1,寫入數據庫中,從數據庫中可以以各種形式導出

 


    2,自定義pipeline,注冊在setting中

 1 import codecs
 2 
 3 class JsonWithEncoding(object):
 4     '''
 5     自定義導出json文件
 6     '''
 7     def __init__(self):
 8         #使用codecs模塊的打開方式,可以指定編碼打開,避免很多編碼問題
 9         self.file = codecs.open("atrical.json","w",encoding="utf-8")
10 
11     def process_item(self,item,spider):
12         lines = json.dumps(dict(item),ensure_ascii=False)+"\n"
13         self.file.write(lines)
14 
15         #注意別忘返回Item給下一個管道
16         return item
17     def spider_closed(self,spider):
18         self.file.close()
以下是ensure_ascii講解
如果``ensure_ascii``為false,則返回值可以包含非ASCII
如果它們出現在“obj”中包含的字符串中。否則,全部
這些字符在JSON字符串中轉義

 

 

在settings中注冊管道並寫上順序

一下是運行結果(部分)

 

 



























'''


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM