0

私はjsonデータからいくつかの情報を抽出しようとしています。次のコードでは、最初に必要な情報を含む json データの一部を抽出し、それをファイルに保存します。次に、このファイルを開こうとすると、コードに続くエラーが発生します。私が間違っている場所を見つけるのを手伝ってもらえますか?

import json
import re

input_file = 'path'
text = open(input_file).read()
experience = re.findall(r'Experience":{"positionsMpr":{"showSection":true,"  (.+?),"visible":true,"find_title":"Find others',text)
output_file = open ('/home/evi.nastou/Documenten/LinkedIn_data/Alewijnse/temp', 'w')
output_file.write('{'+experience[0]+'}')
output_file.close()

text = open('path/temp')
input_text = text.read()
data = json.load(input_text)
positions = json.dumps([s['companyName'] for s in data['positions']])
print positions

エラー:

Traceback (most recent call last):
  File "test.py", line 13, in <module>
    data = json.load(input_text)
  File "/home/evi.nastou/.pythonbrew/pythons/Python-2.7.2/lib/python2.7/json/__init__.py", line 274, in load
     return loads(fp.read(),
 AttributeError: 'str' object has no attribute 'read'
4

1 に答える 1

3

を使用するjson.loads()( に注意s)、の結果の代わりにファイル オブジェクトを渡します。.read()

text = open('path/temp')
data = json.load(text)

json.load()開いているファイル オブジェクトを受け取りますが、文字列を渡していました。json.loads()文字列を取ります。

于 2013-04-25T10:45:18.860 に答える