Twitter中的空白用来自JSON API的tweepy直接发送消息

时间:2016-02-13 16:35:05

标签: python json tweepy

所以我有以下python代码,它通过Tweepy接收收到的直接消息的通知:

#!/usr/bin/env python

from tweepy.streaming import StreamListener
from tweepy import OAuthHandler
from tweepy import Stream
import simplejson as json

consumer_key = "secret"
consumer_secret = "secret"

access_token = "secret"
access_token_secret = "secret"

class StdOutListener(StreamListener):
    def __init__(self):
        print "init"

    def on_connect(self):
        print "Connected"

    def on_disconnect(self, status):
        print ("Disconnected", status)

    def on_direct_message(self, status):
        print ("on_direct_message", status)

    def on_data(self, status):
        # print ("on_data", status)

        decoded = json.loads(status)

        ## grab the direct message
        directMessage = decoded['direct_message']

        message = directMessage.get('text', None)
        message.strip() 
        print "message:*", message, "*"
    return True

    def on_error(self, status):
        print ("on_error", status)

if __name__ == '__main__':
    ##  Connect to Twitter
    auth = OAuthHandler(consumer_key, consumer_secret)
    auth.set_access_token(access_token, access_token_secret)

    ## Init the  StreamListener
    print ("Init Stream")
    l = StdOutListener()
    stream = Stream(auth, l)
    stream.userstream() 

当它运行时,我发送直接消息"测试消息"我将以下内容打印到控制台:

message:* text message *

即消息被接收并解析但在任一端用空格填充,而message.strip()甚至没有纠正。如果我取消注释print directMessage行并查看Twitter发送的json,则没有空格。

如果我的JSON编辑或使用tweepy或其他内容出现问题,我无法解决问题。

我也尝试过使用json包以及simplejson。

0 个答案:

没有答案
相关问题