teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

4

traceback 記載しました。

2017/09/19 12:39

投稿

yoyoyo0205
yoyoyo0205

スコア20

title CHANGED
File without changes
body CHANGED
@@ -39,7 +39,7 @@
39
39
  ```
40
40
  調べても原因がよくわからない初心者です。
41
41
 
42
- ###発生している問題・エラーメッセージ
42
+ ###Traceback (発生しているメッセージ
43
43
 
44
44
  ```
45
45
  runfile('/Users/yo/Downloads/json_l.py', wdir='/Users/yo/Downloads')

3

エラーメッセージを記載しました。

2017/09/19 12:39

投稿

yoyoyo0205
yoyoyo0205

スコア20

title CHANGED
File without changes
body CHANGED
@@ -39,4 +39,35 @@
39
39
  ```
40
40
  調べても原因がよくわからない初心者です。
41
41
 
42
+ ###発生している問題・エラーメッセージ
43
+
44
+ ```
45
+ runfile('/Users/yo/Downloads/json_l.py', wdir='/Users/yo/Downloads')
46
+ Traceback (most recent call last):
47
+
48
+ File "<ipython-input-7-41ae6a345b74>", line 1, in <module>
49
+ runfile('/Users/yo/Downloads/json_l.py', wdir='/Users/yo/Downloads')
50
+
51
+ File "/Users/yo/anaconda/lib/python2.7/site-packages/spyder/utils/site/sitecustomize.py", line 880, in runfile
52
+ execfile(filename, namespace)
53
+
54
+ File "/Users/yo/anaconda/lib/python2.7/site-packages/spyder/utils/site/sitecustomize.py", line 94, in execfile
55
+ builtins.execfile(filename, *where)
56
+
57
+ File "/Users/yo/Downloads/json_l.py", line 19, in <module>
58
+ data.append(json.loads(i))
59
+
60
+ File "/Users/yo/anaconda/lib/python2.7/json/__init__.py", line 339, in loads
61
+ return _default_decoder.decode(s)
62
+
63
+ File "/Users/yo/anaconda/lib/python2.7/json/decoder.py", line 364, in decode
64
+ obj, end = self.raw_decode(s, idx=_w(s, 0).end())
65
+
66
+ File "/Users/yo/anaconda/lib/python2.7/json/decoder.py", line 380, in raw_decode
67
+ obj, end = self.scan_once(s, idx)
68
+
69
+ ValueError: Unterminated string starting at: line 1 column 131 (char 130)
70
+ ```
71
+
72
+
42
73
  どなたか同じ経験がある方がおりましたら、どういう状況なのか、改善案のヒントとなることがあれば教えていただけませんでしょうか?

2

扱っているjsonlファイルの中身を追加しました。

2017/09/19 11:49

投稿

yoyoyo0205
yoyoyo0205

スコア20

title CHANGED
File without changes
body CHANGED
@@ -33,10 +33,10 @@
33
33
 
34
34
  というエラーが出ており、処理を進められません。
35
35
 
36
- 扱っているjsonファイルの中身は以下のようなものです。
37
-
38
-
39
-
36
+ 扱っているjsonファイルの中身は以下のようなものです。(先頭1行)
37
+ ```jsonl
38
+ {"video_id":"nm16580085","watch_num":81,"comment_num":2,"mylist_num":0,"title":"ほとんど紅魔郷風","description":"初投です。まだまだ未熟ですが・・・・よろしくおねがいします","category":"東方","tags":["東方"],"upload_time":1325364768,"file_type":"swf","length":281,"size_high":3125649,"size_low":3125596}
39
+ ```
40
40
  調べても原因がよくわからない初心者です。
41
41
 
42
42
  どなたか同じ経験がある方がおりましたら、どういう状況なのか、改善案のヒントとなることがあれば教えていただけませんでしょうか?

1

ソースコードを記載しました。

2017/09/19 11:40

投稿

yoyoyo0205
yoyoyo0205

スコア20

title CHANGED
@@ -1,1 +1,1 @@
1
- Python & JSON: ValueError: Unterminated string starting at:
1
+ Python & JSON: ValueError: Unterminated string starting at:のエラーで困っています。
body CHANGED
@@ -1,12 +1,42 @@
1
1
  jsonファイルからtags部分のみを抽出して新しいファイルに書き出すという作業をしています。
2
2
  環境はMacでpython2.7(anaconda経由)を使用しております。
3
3
 
4
+ ソースコードは以下の通りです。
5
+
6
+ ```python
7
+ import codecs
8
+ import json
9
+ import glob
10
+
11
+
12
+ allfile = glob.glob("*.jsonl")
13
+
14
+ for file in allfile:
15
+ data = []
16
+ with codecs.open(file,"r","utf-8") as f:
17
+ for i in f:
18
+ data.append(json.loads(i))
19
+
20
+ text = []
21
+ for i in data:
22
+ text.extend(i["tags"])
23
+
24
+ with codecs.open("new_tags.txt","a","utf-8") as nt:
25
+ for txt in text:
26
+ nt.writelines(txt+"\n")
27
+ ```
28
+
29
+
4
30
  始めはうまく抽出処理ができていたのですが、途中のファイルから
5
31
 
6
32
  ValueError: Unterminated string starting at: line 1 column 131 (char 130)
7
33
 
8
34
  というエラーが出ており、処理を進められません。
9
35
 
36
+ 扱っているjsonファイルの中身は以下のようなものです。
37
+
38
+
39
+
10
40
  調べても原因がよくわからない初心者です。
11
41
 
12
42
  どなたか同じ経験がある方がおりましたら、どういう状況なのか、改善案のヒントとなることがあれば教えていただけませんでしょうか?