質問編集履歴

2

解決済みになりました。

2021/01/01 09:13

投稿

Senri551853
Senri551853

スコア12

test CHANGED
File without changes
test CHANGED
@@ -1,181 +1 @@
1
- ### やりたいこと
2
-
3
- 整形済みのJSON形式でデータが入っているdatファイルを読み込んで、欲しいデータを取り出せるようにしたいです。
4
-
5
- ### 質問内容
6
-
7
- datファイル読み込みはできたのですがそこからどうするべきか方法がわかりません
8
-
9
- 文字列にして辞書型にするのでしょうか?
10
-
11
-
12
-
13
- データが長いので簡略化しますがの中身は以下の通りで、これが50個ほど繋がっています。
14
-
15
- これから必要なデータだけ探せるようになりたいです。
16
-
17
- ```json
18
-
19
- {
20
-
21
- "data": {
22
-
23
- "cpu": {
24
-
25
- "15min_load": xx,
26
-
27
- "1min_load": xx,
28
-
29
- "5min_load": xx,
30
-
31
- ‥‥
32
-
33
- },
34
-
35
- "devices": [
36
-
37
- {
38
-
39
- "band": "xx",
40
-
41
- "connection": "xx",
42
-
43
- "current_rate": xx,
44
-
45
- "hostname": "xx",
46
-
47
- "is_guest": xx,
48
-
49
- "mac": "xx",
50
-
51
- ...
52
-
53
- }
54
-
55
- ],
56
-
57
- "disk": {
58
-
59
- "disk": [],
60
-
61
- "total": {
62
-
63
- ‥‥
64
-
65
- }
66
-
67
- },
68
-
69
- "exceed_dev_list_max": false,
70
-
71
- "memory": {
72
-
73
- ‥‥
74
-
75
- },
76
-
77
- "network": [
78
-
79
- {
80
-
81
- ‥‥
82
-
83
- }
84
-
85
- ],
86
-
87
- "nodes": [
88
-
89
- {
90
-
91
- ‥‥
92
-
93
- }
94
-
95
- ],
96
-
97
- "space": {
98
-
99
- "lun": [],
100
-
101
- "total": {
102
-
103
- ‥‥
104
-
105
- },
106
-
107
- "volume": [
108
-
109
- {
110
-
111
- ‥‥
112
-
113
- }
114
-
115
- ]
116
-
117
- },
118
-
119
- "time": 1590937205,
120
-
121
- },
122
-
123
- "success": true
124
-
125
- }
126
-
127
- ```
128
-
129
- ### 試したこと
130
-
131
- 下記コードですべて文字列にはできています
132
-
133
- ```Python
134
-
135
- with open('datefile.dat','r',encoding="utf-8") as fp:
136
-
137
- print(type(fp))
138
-
139
- #<class 'io.TextIOWrapper'>
140
-
141
- data = fp.read()
142
-
143
- print(type(data))
144
-
145
- #<class 'str'>
1
+ ###############解決済み###############
146
-
147
- ```
148
-
149
- json.load()やast.literal_eval()ではエラーが出ました
150
-
151
- ```python
152
-
153
- import json
154
-
155
- import ast
156
-
157
- with open("datefile.dat", 'r',encoding="utf-8") as fp :
158
-
159
- data = json.load(fp)
160
-
161
- #json.decoder.JSONDecodeError: Extra data: line 254 column 1 (char 7981)
162
-
163
- redata = ast.literal_eval(data)
164
-
165
- # File "<unknown>", line 254
166
-
167
- # {
168
-
169
- # ^
170
-
171
- #SyntaxError: invalid syntax
172
-
173
- ```
174
-
175
- 半日くらいぐぐって試しましたが疲れました…どうかご教授ください
176
-
177
- ### 実行環境
178
-
179
- VScode
180
-
181
- Python 3.8.0

1

誤字修正

2021/01/01 09:13

投稿

Senri551853
Senri551853

スコア12

test CHANGED
@@ -1 +1 @@
1
- datファイルからデータ検索したい
1
+ json形式のdatファイルからデータ検索したい
test CHANGED
File without changes