2016-07-31 154 views
0

我試圖插入時間戳的JSON捲曲get請求,併發布到pubnub並未能序列化格式正確插入時間戳在python

#!/usr/bin/python 

import requests 
import json 
import sys 
import datetime 
from pubnub import Pubnub 

now = datetime.datetime.now() 
pubnub = Pubnub(
publish_key = "key", 
subscribe_key = "my_key") 
channel = "my_channel" 

payload = {'Postman-Token': 'sometoken', 'title': "pythontest"} 
message = requests.get("http://localhost:8080/", data=json.dumps(payload)) 

print.message.text JSON響應給{"code":"200","message":"Success","itemCount":0,"items":[]}

我想時間標記添加到上述消息,並希望得到的結果是這樣的:{"code":"200","message":"Success",date:"2016-07-31 15:26"}

print now.strftime("%Y-%m-%d %H:%M") 
timestamp=str(now.strftime("%Y-%m-%d %H:%M")) 

print message.text,now.strftime("%Y-%m-%d %H:%M") 
Hello = str(message.text) 

pubnub.publish(
channel = channel, 
message = (Hello,timestamp)) 

但是,當我將它發佈到pubnub,結果如下所示。

[u'{"code":"200","message":"Success","itemCount":0,"items":[]}', u'2016-07-31 15:26'] 

請幫

回答

0

,因爲您發送包含字典和時間戳的元組你得到這樣的結果,所以很明顯它會返回元組作爲響應。嘗試在您要發送的消息中插入時間戳。

看看下面的工作:

message = json.loads(requests.get("http://localhost:8080/", data=json.dumps(payload))) 
message["date"] = timestamp 

這似乎適合你想要的東西。

+0

你的意思是這樣--- --- message = requests.get(「http:// localhost:8080」,data = json.dumps(payload))timestamp = message [「date」:now.strftime(「 %Y-%m-%d%H:%M「)] – upagna

+0

你試過我寫的代碼嗎?我真的不明白你現在嘗試了什麼。基本上,一旦你有請求的消息,將其轉換爲字典並使用它。從那裏你可以做任何事情。 –

+0

我得到這個錯誤。我是python新手,這是我在使用代碼時得到的錯誤---> message [「date」] = timestamp NameError:name'timestamp'未定義 – upagna