Задать вопрос

Как загрузить данные из текстового файла в базу данных ArangoDB?

Имеется текстовый файл(точнее несколько сотен файлов, по 1ГБ+- каждый) с содержимым формата:
name|text
Пример:
Лошадь|Не ела и не курила
Розетка|Бездушна как всегда
Насос|Тоже человек

Пробовал JSON конвертер "DTM Text to JSON Converter", но он не в таком формате выдает...

Вот как должен выглядеть JSON для ArangoDB:
[
  {
     "name":"Насос"
    ,"text":"Тоже человек"
  },
  {
     "name":"Розетка"
    ,"text":"Бездушна как всегда"
  },
  {
     "name":"Лошадь"
    ,"text":"Не ела и не курила"
  }
]
  • Вопрос задан
  • 489 просмотров
Подписаться 2 Простой Комментировать
Решения вопроса 2
2ord
@2ord
Преобразовать в CSV и импортировать.
Ответ написан
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
Держите, на питоне3

import sys
import json

notFirst = False

print("[") # start json  array
for data in sys.stdin:
   (name,text) = data.strip().split("|") # split line
   obj = dict(name=name, text=text)  # to dict()

   if notFirst: # avoid first comma for object
     print(",",  end='')
   print(json.dumps(obj, ensure_ascii=False)) # dump json object
   notFirst = True

print("]") # end json array

Сохраняете в файл и делаете так
cat mydatafile.txt | python3 txttojson.py > mydatafile.json


Получаете валидный json
[
{"text": "Не ела и не курила", "name": "Лошадь"}
,{"text": "Бездушна как всегда", "name": "Розетка"}
,{"text": "Тоже человек", "name": "Насос"}
]
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы