无法获取 json 键值
unable to Get json key value
我在下面有一个 python 代码来获取 json 键值,但我在下面。
import json
import datetime
import dateutil
import time
import os
secret = os.system("aws secretsmanager get-secret-value --secret-id stage_secret --query SecretString --output text")
print(secret)
data = (secret["username"])
print(data)
secret
的输出是 {"username":"user1","password":"psswd@123"}
我想提取 username
和 password
的值并将其存储在一个变量中,但我遇到了以下错误
Traceback (most recent call last):
File "test.py", line 9, in <module>
data = (secret["username"])
TypeError: 'int' object has no attribute '__getitem__'
请帮助实现同样的目标
Python Version Python 2.7.5
Output of secret is ...
不,不是。如果您参考 os.system()
文档,结果是命令的退出代码,它是一个 int。
如果要捕获输出,请使用 subprocess
模块
import subprocess
import json
secret_id = "stage_secret" # do NOT store this in your source code
output_mode = "text"
output = subprocess.check_output(["aws", "secretsmanager" , "get-secret-value", "--secret-id", secret_id, "--query", "SecretString", "--output", output_mode])
data = json.loads(output.strip())
print(data['username'])
不过,你真的应该consider using boto3
我在下面有一个 python 代码来获取 json 键值,但我在下面。
import json
import datetime
import dateutil
import time
import os
secret = os.system("aws secretsmanager get-secret-value --secret-id stage_secret --query SecretString --output text")
print(secret)
data = (secret["username"])
print(data)
secret
的输出是 {"username":"user1","password":"psswd@123"}
我想提取 username
和 password
的值并将其存储在一个变量中,但我遇到了以下错误
Traceback (most recent call last):
File "test.py", line 9, in <module>
data = (secret["username"])
TypeError: 'int' object has no attribute '__getitem__'
请帮助实现同样的目标
Python Version Python 2.7.5
Output of secret is ...
不,不是。如果您参考 os.system()
文档,结果是命令的退出代码,它是一个 int。
如果要捕获输出,请使用 subprocess
模块
import subprocess
import json
secret_id = "stage_secret" # do NOT store this in your source code
output_mode = "text"
output = subprocess.check_output(["aws", "secretsmanager" , "get-secret-value", "--secret-id", secret_id, "--query", "SecretString", "--output", output_mode])
data = json.loads(output.strip())
print(data['username'])
不过,你真的应该consider using boto3