2
我正在使用Pyodbc來遍歷一個表格,將記錄作爲JSON返回併發送到服務器進行驗證。我能夠迭代並返回行,但是,服務器期望JSON採用以下格式。如何迭代我的結果並將{"MetaData": {}, "SRData":
鍵附加到每個迭代結果/輸出?我的代碼如下。 所需的輸出:如何爲所有輸出字典分配一個JSON密鑰?
{
"MetaData": {},
"SRData": {
"SRNumber": "1-3580671"
}
},
{
"MetaData": {},
"SRData": {
"SRNumber": "1-3580156"
}
}
代碼:
import pyodbc
import json
import requests
connstr = 'DRIVER={SQL Server};SERVER=server;DATABASE=ServiceRequest; UID=SA;PWD=pwd'
conn = pyodbc.connect(connstr)
cursor = conn.cursor()
cursor.execute("""SELECT SRNumber FROM ContainerFC""")
columns = [column[0] for column in cursor.description]
results = []
for row in cursor.fetchall():
results.append(dict(zip(columns, row)))
output = {"MetaData": {}, "SRData": results}
print(json.dumps(output, sort_keys=True, indent=4))
objects_file = 'C:\Users\Administrator\Desktop\JSONOutput.txt'
f = open(objects_file,'w')
url = "url"
headers = {'Content-type': 'text/plain', 'Accept': '/'}
r = requests.post(url, data= json.dumps(output), headers=headers, verify=False)
print >> f
print 'It took', time.time()-start, 'seconds.'
conn.close()
電流輸出:
{
"MetaData": {},
"SRData": [
{
"SRNumber": "1-3140751"
},
{
"SRNumber": "1-5574551"
}
]
}
這並獲得成功,感謝@Gord湯普森 – geoffreyGIS