Мой код Python с использованием API Facebook для запроса информации о пользователе. И имя может содержать символы Unicode:
# -*- coding: utf-8 -*-
from facebook import Facebook
def desktop_app():
# Get api_key and secret_key from a file
facebook = Facebook('x', 'xx')
facebook.auth.createToken()
# Show login window
facebook.login()
# Login to the window, then press enter
print 'After logging in, press enter...'
raw_input()
facebook.auth.getSession()
info = facebook.users.getInfo([facebook.uid], [u'name', 'birthday', 'affiliations', 'sex'])[0]
for attr in info:
print '%s: %s'.encode('ascii') % (attr, info[attr])
friends = facebook.friends.get()
friends = facebook.users.getInfo(friends[0:5], [u'name', 'birthday', 'relationship_status'])
for friend in friends:
if 'birthday' in friend:
print friend['name'].encode('utf8'), 'has a birthday on', friend['birthday'], 'and is', friend['relationship_status']
else:
print friend['name'].encode('utf8'), 'has no birthday and is', friend['relationship_status']
arefriends = facebook.friends.areFriends([friends[0]['uid']], [friends[1]['uid']])
if __name__ == "__main__":
desktop_app()
Я получил эту ошибку, когда имя Facebook содержит символы Unicode:
Файл "C: \ Python27 \ lib \ encodings \ cp437.py", строка 12, в кодировке
вернуть codecs.charmap_encode (ввод, ошибки, кодировка_карты)
UnicodeEncodeError: кодек 'charmap' не может кодировать символ u '\ u0169' в позиции
7: персонаж отображается на
Заранее спасибо, если вы поможете мне это исправить! :)