Как прочитать файл JSON из DOCX с помощью Python - PullRequest
0 голосов
/ 19 мая 2018

У меня есть файл docx, как показано ниже.

[ {    "name": "ravi",  
  "city": "chennai",    
  "country": "india"   
}
{

    "name": "raj",  
  "city": "chennai",    
  "country": "india" 
}
]

Я пытаюсь прочитать это содержимое в виде списка словарей.Я попробовал это.

from docx import Document

document = Document('2255858_1321163255_worldcupdata.docx')
s=""
for i in document.paragraphs:
    s+=i.text
json_list=s[1:-1].split('}') 

, но я не смог преобразовать строку в dict, я получаю ошибку значения для следующего оператора.

dict('{    "name": "ravi", "city": "chennai", "country": "india"  }')

ValueError: dictionary update sequence element #0 has length 1; 2 is required

1 Ответ

0 голосов
/ 19 мая 2018

Вы можете использовать json

[РЕДАКТИРОВАТЬ]

from docx import Document
import regex as re
import json

document = Document('2255858_1321163255_worldcupdata.docx')
s=""
for i in document.paragraphs:
    s+=i.text
p = re.compile('\[(.*?)\]')
d = json.loads(p.search(s).group(0))

Do d = json.loads(your_string)

d будет вашим диктом

loads из json преобразует строку в dict

...