使用Python和shell脚本将JSON转换为BSON mongoDB

时间:2015-07-03 13:03:39

标签: python json mongodb shell bson

我正在尝试编写一个脚本来将批量数据放入 尽管有成千上万的请求。

剧本:

#!/bin/bash                                                 
while read line           
do                                                                                 
   echo "$line" | python <(cat <<HERE                                          
        import sys 
        import json 
        from bson import BSON
        with open("test.bson", "a") as myfile:
        for line in sys.stdin:
        bson_string = BSON.encode(json.load(line.rstrip()))
        myfile.write(bson_string)
        HERE
        )
done < /srv/test.json
#mongorestore  -collection -test.bson

示例test.json

$ cat /srv/test.json                              
{ "foo" : "bar" }                                           
{ "foo" : "bar" }                                                       
{ "foo" : "bar" }
{ "foo" : "bar" }                                                             
{ "foo" : "bar" }
{ "foo" : "bar" }                                                               
{ "foo" : "bar" }

该脚本逐行读取文件test.json并将转换为。输出存储在test.bson中并上传(mongorestore)到mongoDB。

但是上面的代码没有工作,我没有收到任何错误,bson文件也是空的。

有关bson库的更多信息,请访问here

0 个答案:

没有答案