我想用几种语言发送短信。它适用于英语。但如果我想发送法语或西班牙语的短信,我有一个问题。 消息是Unicode。在此之后
message = message.encode('utf-8')
消息是一个字符串并正确打印结果。但是,当我想使用API发送消息时,它会发送问号(????????)而不是像à,έ等字符我已经测试过我的手机了。 当我做消息[0]时,它给了我“?”。所以我猜编码('utf-8')不能正常工作。消息包含法语或西班牙语或德语或任何字符。它是一个变量,所以每次都包含不同的语言。 以下是我的代码示例:
to = queue_mobile
message = queue_message
gateway = AfricasTalkingGateway(username, apikey)
try:
results = gateway.sendMessage(to, message)
for recipient in results:
print 'number=%s;status=%s;messageId=%s;cost=%s' % (recipient['number'],
recipient['status'],
recipient['messageId'],
recipient['cost'])
如果不对消息进行编码,它将从API返回异常(ascii编解码器无法对字符0-6进行编码)。 如果我对消息进行编码('utf-8'),它会发送短信但带有问号。
答案 0 :(得分:0)
在GSM中,每种语言都有不同的7位字符集。