2016-09-24 2 views
-1

보여줍니다 :파이썬 데이터 분석 오류에 대해 : 기대 값 : 행 1 열 1 (문자는 0 개) 데이터 분석 및 첫 번째 예는 파이썬의 예를 따라 다음입니다

In [15]: path = 'ch02/usagov_bitly_data2012-03-16-1331923249.txt' 
In [16]: open(path).readline() 
Out[16]: '{ "a": "Mozilla\\/5.0 (Windows NT 6.1; WOW64) AppleWebKit\\/535.11 
(KHTML, like Gecko) Chrome\\/17.0.963.78 Safari\\/535.11", "c": "US", "nk": 1, 
"tz": "America\\/New_York", "gr": "MA", "g": "A6qOVH", "h": "wfLQtf", "l": 
"orofrog", "al": "en-US,en;q=0.8", "hh": "1.usa.gov", "r": 
"http:\\/\\/www.facebook.com\\/l\\/7AQEFzjSi\\/1.usa.gov\\/wfLQtf", "u": 
"http:\\/\\/www.ncbi.nlm.nih.gov\\/pubmed\\/22415991", "t": 1331923247, "hc": 
1331822918, "cy": "Danvers", "ll": [ 42.576698, -70.954903 ] }\n' 

를 내가 얻을이 지침을 따른 후 :

In [21]: open(path).readline() 
Out[21]: '{ "a": "Mozilla\\/5.0 (Windows NT 6.1; WOW64) AppleWebKit\\/535.11 
(KHTML, like Gecko) Chrome\\/17.0.963.78 Safari\\/535.11", "c": "US", "nk": 1, " 
tz": "America\\/New_York", "gr": "MA", "g": "A6qOVH", "h": "wfLQtf", "l": "orofr 
og", "al": "en-US,en;q=0.8", "hh": "1.usa.gov", "r": "http:\\/\\/www.facebook.co 
m\\/l\\/7AQEFzjSi\\/1.usa.gov\\/wfLQtf", "u": "http:\\/\\/www.ncbi.nlm.nih.gov\\ 
/pubmed\\/22415991", "t": 1331923247, "hc": 1331822918, "cy": "Danvers", "ll": [ 
42.576698, -70.954903 ] }\n' 

유일한 차이점은 " 부분입니다.

나중에 내가하려고하면

import json 
path = 'ch02/usagov_bitly_data2012-03-16-1331923249.txt' 
records = [json.loads(line) for line in open(path)] 

... 내가 무엇을 얻을 :이 JSONDecodeError 오류가 발생하는 이유

`In [22]: import json 

In [23]: path = 'usagov_bitly_data2012-03-16-1331923249.txt' 

In [24]: records = [json.loads(line) for line in open(path)] 
--------------------------------------------------------------------------- 
JSONDecodeError       Traceback (most recent call last) 
<ipython-input-24-b1e0b494454a> in <module>() 
----> 1 records = [json.loads(line) for line in open(path)] 

<ipython-input-24-b1e0b494454a> in <listcomp>(.0) 
----> 1 records = [json.loads(line) for line in open(path)] 

C:\Anaconda3\lib\json\__init__.py in loads(s, encoding, cls, object_hook, parse_ 
float, parse_int, parse_constant, object_pairs_hook, **kw) 
    317    parse_int is None and parse_float is None and 
    318    parse_constant is None and object_pairs_hook is None and not 
kw): 
--> 319   return _default_decoder.decode(s) 
    320  if cls is None: 
    321   cls = JSONDecoder 

C:\Anaconda3\lib\json\decoder.py in decode(self, s, _w) 
    337 
    338   """ 
--> 339   obj, end = self.raw_decode(s, idx=_w(s, 0).end()) 
    340   end = _w(s, end).end() 
    341   if end != len(s): 

C:\Anaconda3\lib\json\decoder.py in raw_decode(self, s, idx) 
    355    obj, end = self.scan_once(s, idx) 
    356   except StopIteration as err: 
--> 357    raise JSONDecodeError("Expecting value", s, err.value) from 
None 
    358   return obj, end 


JSONDecodeError: Expecting value: line 1 column 1 (char 0)` 

하나라도 알고 있나요?

답변

0

선생님, JSON 형식이 아니므로 이상한 텍스트 '@ ¿'를 제거하거나 온라인 형식 JSON을 좀 더 명확하게 해봐야한다고 생각합니다.

+0

답변 해 주셔서 감사합니다. 파일을 txt 형식으로 열면이 예외가 표시되지 않으므로 제거 할 수 없습니다. –