我如何从python发布到Gwibber?

我如何从python发布到Gwibber?

我试过了

import gwibber.utils foo = gwibber.utils.GwibberPublic() foo.post("This is a test message") 

来自https://wiki.ubuntu.com/Quickly/Snippets 。

但它不起作用。

你应该真的使用基于GIR的API,这是一个更新的例子:

 from gi.repository import Gwibber s = Gwibber.Service () s.send_message ("This is the content to post", None, None, None) 

这将发布到当前启用的所有帐户。 以下是send_message的参数:

 """ send_message: Posts a message @message: The message to post to Gwibber as a string or None @id: The gwibber message id or None @action: The action or None (reply, private) @account_id: The ID of the account to post from or None """ 

因此,如果您只想从特定帐户发帖,您可以执行以下操作:

 from gi.repository import Gwibber accounts_service = Gwibber.Accounts.new () s = Gwibber.Service () accts = accounts_service.list () # A list of Gwibber.Account objects for acct in accts: print "Gwibber ID: %s, Service: %s, Username: %s, Send: %s" % (acct.props.id, acct.props.service, acct.props.username, "True" if acct.props.send_enabled == "1" else "False") #add code to check if this is the account you want to post from, like if you want to post from all twitter accounts you would do this if acct.props.service == "twitter": s.send_message ("Whatever you want to post", None, None, acct.props.id)