Python收邮件提取发信人问题?

一下是我的一段代码,功能是从服务器收取信件,把发信人的地址保存进列表。

[Copy to clipboard] [ - ]
CODE:
import poplib,string,email
from email.Header import Header

def pop3conn(host,account,password):
        mailInBox=poplib.POP3(host)
        mailInBox.user(account)
        mailInBox.pass_(password)

        addressList=[]
        mailnum,mailsize=mailInBox.stat()
        for selected in range(0,mailnum):
                response,message,content=mailInBox.retr(selected+1)
                messageString=email.message_from_string(string.join(message,'\n'))
                type=messageString.get_content_charset()
                if type=='gb2312':
                        unicode(messageString.get_payload(),'gb2312')
                if type=='shift_jis':
                        unicode(messageString.get_payload(),'shift_jis')
                if type=='None':
                        unicode(messageString.get_payload(),'utf-8')
                messageFrom=email.Header.decode_header(messageString['from'])[0][0]
                addressList.append(messageFrom)
        return addressList

在发信人的别名是英文时发信人格式正确,如:"admin" <admin@xxxx.net>
在发信人的别名是中文时发信人格式错误,如:"\xcb\xef\xb1\xa6\xc0\xd6"<xxx@21cn.com>,其中\xcb\xef\xb1\xa6\xc0\xd6是中文别名
另外从163发信时,不能提取发信人的地址。
请问,如何解决解码的问题,如何能提取163的发信人的地址?