UnicodeDecodeError at /api/people/35/

'ascii' codec can't decode byte 0xc3 in position 0: ordinal not in range(128)
Request Method: GET
Request URL: https://swapi.dev/api/people/35/?format=wookiee
Django Version: 1.7.4
Exception Type: UnicodeDecodeError
Exception Value:
'ascii' codec can't decode byte 0xc3 in position 0: ordinal not in range(128)
Exception Location: /home/swapi/swapi/resources/renderers.py in translate_to_wookie, line 50
Python Executable: /home/swapi/swapi/swapienv/bin/python
Python Version: 2.7.16
Python Path:
['/home/swapi/swapi',
 '/usr/lib/python27.zip',
 '/usr/lib64/python2.7',
 '/usr/lib64/python2.7/plat-linux2',
 '/usr/lib64/python2.7/lib-tk',
 '/usr/lib64/python2.7/lib-old',
 '/usr/lib64/python2.7/lib-dynload',
 '/home/swapi/swapi/swapienv/lib64/python2.7/site-packages',
 '/home/swapi/swapi/swapienv/lib/python2.7/site-packages']
Server time: Thu, 28 Mar 2024 22:07:03 +0000

Unicode error hint

The string that could not be encoded/decoded was:

Traceback Switch to copy-and-paste view



Request information

GET

Variable Value
format
u'wookiee'

POST

No POST data

FILES

No FILES data

No cookie data

META

Variable Value
wsgi.multiprocess
False
RUN_MAIN
'true'
SERVER_PROTOCOL
'HTTP/1.0'
SERVER_SOFTWARE
'WSGIServer/0.1 Python/2.7.16'
SCRIPT_NAME
u''
LESSOPEN
'||/usr/bin/lesspipe.sh %s'
REQUEST_METHOD
'GET'
LOGNAME
'swapi'
USER
'swapi'
PATH
'/home/swapi/swapi/swapienv/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/swapi/.local/bin:/home/swapi/bin'
QUERY_STRING
'format=wookiee'
HOME
'/home/swapi'
PS1
'(swapienv) [\\u@\\h \\W]\\$ '
LANG
'en_US.UTF-8'
VIRTUAL_ENV
'/home/swapi/swapi/swapienv'
SHELL
'/bin/bash'
TZ
'UTC'
SERVER_NAME
'localhost.localdomain'
REMOTE_ADDR
'127.0.0.1'
SHLVL
'2'
PWD
'/home/swapi/swapi'
HISTSIZE
'1000'
wsgi.url_scheme
'http'
SERVER_PORT
'8001'
CONTENT_LENGTH
''
HTTP_X_FORWARDED_PROTO
'https'
TERM
'screen.xterm-256color'
wsgi.input
<socket._fileobject object at 0x7fbb8f9a7650>
HTTP_USER_AGENT
'claudebot'
HTTP_HOST
'swapi.dev'
wsgi.multithread
True
HTTP_CONNECTION
'close'
XDG_SESSION_ID
'66924'
STY
'10329.pts-0.swapi'
_
'/home/swapi/swapi/swapienv/bin/python'
HTTP_ACCEPT
'*/*'
TERMCAP
'SC|screen.xterm-256color|VT 100/ANSI X3.64 virtual terminal:\\\n\t:DO=\\E[%dB:LE=\\E[%dD:RI=\\E[%dC:UP=\\E[%dA:bs:bt=\\E[Z:\\\n\t:cd=\\E[J:ce=\\E[K:cl=\\E[H\\E[J:cm=\\E[%i%d;%dH:ct=\\E[3g:\\\n\t:do=^J:nd=\\E[C:pt:rc=\\E8:rs=\\Ec:sc=\\E7:st=\\EH:up=\\EM:\\\n\t:le=^H:bl=^G:cr=^M:it#8:ho=\\E[H:nw=\\EE:ta=^I:is=\\E)0:\\\n\t:li#25:co#107:am:xn:xv:LP:sr=\\EM:al=\\E[L:AL=\\E[%dL:\\\n\t:cs=\\E[%i%d;%dr:dl=\\E[M:DL=\\E[%dM:dc=\\E[P:DC=\\E[%dP:\\\n\t:im=\\E[4h:ei=\\E[4l:mi:IC=\\E[%d@:ks=\\E[?1h\\E=:\\\n\t:ke=\\E[?1l\\E>:vi=\\E[?25l:ve=\\E[34h\\E[?25h:vs=\\E[34l:\\\n\t:ti=\\E[?1049h:te=\\E[?1049l:us=\\E[4m:ue=\\E[24m:so=\\E[3m:\\\n\t:se=\\E[23m:mb=\\E[5m:md=\\E[1m:mh=\\E[2m:mr=\\E[7m:\\\n\t:me=\\E[m:ms:\\\n\t:Co#8:pa#64:AF=\\E[3%dm:AB=\\E[4%dm:op=\\E[39;49m:AX:\\\n\t:vb=\\Eg:G0:as=\\E(0:ae=\\E(B:\\\n\t:ac=\\140\\140aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++,,hhII00:\\\n\t:po=\\E[5i:pf=\\E[4i:Km=\\E[M:k0=\\E[10~:k1=\\EOP:k2=\\EOQ:\\\n\t:k3=\\EOR:k4=\\EOS:k5=\\E[15~:k6=\\E[17~:k7=\\E[18~:\\\n\t:k8=\\E[19~:k9=\\E[20~:k;=\\E[21~:F1=\\E[23~:F2=\\E[24~:\\\n\t:F3=\\E[1;2P:F4=\\E[1;2Q:F5=\\E[1;2R:F6=\\E[1;2S:\\\n\t:F7=\\E[15;2~:F8=\\E[17;2~:F9=\\E[18;2~:FA=\\E[19;2~:kb=\x7f:\\\n\t:K2=\\EOE:kB=\\E[Z:kF=\\E[1;2B:kR=\\E[1;2A:*4=\\E[3;2~:\\\n\t:*7=\\E[1;2F:#2=\\E[1;2H:#3=\\E[2;2~:#4=\\E[1;2D:%c=\\E[6;2~:\\\n\t:%e=\\E[5;2~:%i=\\E[1;2C:kh=\\E[1~:@1=\\E[1~:kH=\\E[4~:\\\n\t:@7=\\E[4~:kN=\\E[6~:kP=\\E[5~:kI=\\E[2~:kD=\\E[3~:ku=\\EOA:\\\n\t:kd=\\EOB:kr=\\EOC:kl=\\EOD:km:'
wsgi.file_wrapper
''
wsgi.version
(1, 0)
GATEWAY_INTERFACE
'CGI/1.1'
wsgi.run_once
False
CSRF_COOKIE
u'X8RSUsKxNuTThNnAnvcuVWp8PdQoneRu'
OLDPWD
'/home/swapi'
HOSTNAME
'swapi.dev'
HISTCONTROL
'ignoredups'
WINDOW
'0'
DJANGO_SETTINGS_MODULE
'swapi.settings'
CONTENT_TYPE
'text/plain'
MAIL
'/var/spool/mail/swapi'
LS_COLORS
''
REMOTE_HOST
''
wsgi.errors
<open file '<stderr>', mode 'w' at 0x7fbb98b011e0>
PATH_INFO
u'/api/people/35/'

Settings

Using settings module swapi.settings

Setting Value
CORS_URLS_REGEX
'^/api/.*$'
KEEN_DEBUG
True
USE_THOUSAND_SEPARATOR
False
CSRF_COOKIE_SECURE
False
KEEN_READ_KEY
u'********************'
LANGUAGE_CODE
'en-us'
ROOT_URLCONF
'swapi.urls'
LOGIN_URL
'/accounts/login/'
BASE_DIR
'/home/swapi/swapi/swapi'
TEST_NON_SERIALIZED_APPS
[]
DEFAULT_CHARSET
'utf-8'
SESSION_SERIALIZER
'django.contrib.sessions.serializers.JSONSerializer'
STATIC_ROOT
'staticfiles'
ALLOWED_HOSTS
['*']
MESSAGE_STORAGE
'django.contrib.messages.storage.fallback.FallbackStorage'
EMAIL_SUBJECT_PREFIX
'[Django] '
SEND_BROKEN_LINK_EMAILS
False
STATICFILES_FINDERS
('django.contrib.staticfiles.finders.FileSystemFinder',
 'django.contrib.staticfiles.finders.AppDirectoriesFinder')
SESSION_CACHE_ALIAS
'default'
STRIPE_SECRET_KEY
u'********************'
SESSION_COOKIE_DOMAIN
None
SESSION_COOKIE_NAME
'sessionid'
ADMIN_FOR
()
TIME_INPUT_FORMATS
('%H:%M:%S', '%H:%M:%S.%f', '%H:%M')
DATABASES
{'default': {'ATOMIC_REQUESTS': False,
             'AUTOCOMMIT': True,
             'CONN_MAX_AGE': 0,
             'ENGINE': 'django.db.backends.sqlite3',
             'HOST': '',
             'NAME': '/home/swapi/swapi/db.sqlite3',
             'OPTIONS': {},
             'PASSWORD': u'********************',
             'PORT': '',
             'TEST': {'CHARSET': None,
                      'COLLATION': None,
                      'MIRROR': None,
                      'NAME': None},
             'TIME_ZONE': 'UTC',
             'USER': ''}}
FILE_UPLOAD_DIRECTORY_PERMISSIONS
None
FILE_UPLOAD_PERMISSIONS
None
FILE_UPLOAD_HANDLERS
('django.core.files.uploadhandler.MemoryFileUploadHandler',
 'django.core.files.uploadhandler.TemporaryFileUploadHandler')
DEFAULT_CONTENT_TYPE
'text/html'
APPEND_SLASH
True
FIRST_DAY_OF_WEEK
0
DATABASE_ROUTERS
[]
DEFAULT_TABLESPACE
''
YEAR_MONTH_FORMAT
'F Y'
STATICFILES_STORAGE
'whitenoise.django.GzipManifestStaticFilesStorage'
CACHES
{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}}
SERVER_EMAIL
'root@localhost'
SESSION_COOKIE_PATH
'/'
STRIPE_TEST_SECRET_KEY
u'********************'
SILENCED_SYSTEM_CHECKS
[]
MIDDLEWARE_CLASSES
('django.contrib.sessions.middleware.SessionMiddleware',
 'corsheaders.middleware.CorsMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware')
USE_I18N
True
THOUSAND_SEPARATOR
','
SECRET_KEY
u'********************'
LANGUAGE_COOKIE_NAME
'django_language'
DEFAULT_INDEX_TABLESPACE
''
TRANSACTIONS_MANAGED
False
LOGGING_CONFIG
'logging.config.dictConfig'
TEMPLATE_LOADERS
('django.template.loaders.filesystem.Loader',
 'django.template.loaders.app_directories.Loader')
STRIPE_TEST_PUBLISHABLE_KEY
u'********************'
WSGI_APPLICATION
'swapi.wsgi.application'
TEMPLATE_DEBUG
True
X_FRAME_OPTIONS
'SAMEORIGIN'
CSRF_COOKIE_NAME
'csrftoken'
FORCE_SCRIPT_NAME
None
USE_X_FORWARDED_HOST
False
SIGNING_BACKEND
'django.core.signing.TimestampSigner'
SESSION_COOKIE_SECURE
False
CSRF_COOKIE_DOMAIN
None
FILE_CHARSET
'utf-8'
DEBUG
True
MARKDOWN_DEUX_STYLES
{'default': {'extras': {'code-friendly': None}, 'safe_mode': False}}
LANGUAGE_COOKIE_DOMAIN
None
DEFAULT_FILE_STORAGE
'django.core.files.storage.FileSystemStorage'
INSTALLED_APPS
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.humanize',
 'django.contrib.staticfiles',
 'resources',
 'rest_framework',
 'markdown_deux',
 'corsheaders',
 'clear_cache')
LANGUAGES_BIDI
('he', 'ar', 'fa', 'ur')
USE_L10N
True
COMMENTS_ALLOW_PROFANITIES
False
STATICFILES_DIRS
('/home/swapi/swapi/swapi/static',)
PREPEND_WWW
False
SECURE_PROXY_SSL_HEADER
('HTTP_X_FORWARDED_PROTO', 'https')
LANGUAGE_COOKIE_AGE
None
SESSION_COOKIE_HTTPONLY
True
DEBUG_PROPAGATE_EXCEPTIONS
False
INTERNAL_IPS
()
MONTH_DAY_FORMAT
'F j'
MANAGERS
()
SESSION_EXPIRE_AT_BROWSER_CLOSE
False
TIME_FORMAT
'P'
AUTH_USER_MODEL
'auth.User'
DATE_INPUT_FORMATS
('%Y-%m-%d',
 '%m/%d/%Y',
 '%m/%d/%y',
 '%b %d %Y',
 '%b %d, %Y',
 '%d %b %Y',
 '%d %b, %Y',
 '%B %d %Y',
 '%B %d, %Y',
 '%d %B %Y',
 '%d %B, %Y')
AUTHENTICATION_BACKENDS
('django.contrib.auth.backends.ModelBackend',)
EMAIL_HOST_PASSWORD
u'********************'
PASSWORD_RESET_TIMEOUT_DAYS
u'********************'
SESSION_FILE_PATH
None
CACHE_MIDDLEWARE_ALIAS
'default'
SESSION_SAVE_EVERY_REQUEST
False
NUMBER_GROUPING
0
SESSION_ENGINE
'django.contrib.sessions.backends.db'
CSRF_FAILURE_VIEW
'django.views.csrf.csrf_failure'
CSRF_COOKIE_PATH
'/'
LOGIN_REDIRECT_URL
'/accounts/profile/'
DECIMAL_SEPARATOR
'.'
IGNORABLE_404_URLS
()
LOCALE_PATHS
()
TEMPLATE_STRING_IF_INVALID
''
CORS_ALLOW_METHODS
('GET',)
LOGOUT_URL
'/accounts/logout/'
EMAIL_USE_TLS
False
FIXTURE_DIRS
()
EMAIL_HOST
'localhost'
DATE_FORMAT
'N j, Y'
MEDIA_ROOT
''
DEFAULT_EXCEPTION_REPORTER_FILTER
'django.views.debug.SafeExceptionReporterFilter'
ADMINS
()
FORMAT_MODULE_PATH
None
DEFAULT_FROM_EMAIL
'webmaster@localhost'
REST_FRAMEWORK
{'DEFAULT_FILTER_BACKENDS': ('rest_framework.filters.SearchFilter',),
 'DEFAULT_RENDERER_CLASSES': ('rest_framework.renderers.JSONRenderer',
                              'rest_framework.renderers.BrowsableAPIRenderer',
                              'resources.renderers.WookieeRenderer'),
 'PAGINATE_BY': 10}
MEDIA_URL
''
DATETIME_FORMAT
'N j, Y, P'
TEMPLATE_DIRS
('/home/swapi/swapi/swapi/templates',)
DISALLOWED_USER_AGENTS
()
ALLOWED_INCLUDE_ROOTS
()
LOGGING
{}
KEEN_WRITE_KEY
u'********************'
SHORT_DATE_FORMAT
'm/d/Y'
KEEN_PROJECT_ID
''
STRIPE_KEYS
u'********************'
TEST_RUNNER
'django.test.runner.DiscoverRunner'
CUSTOM_APPS
('resources', 'rest_framework', 'markdown_deux', 'corsheaders', 'clear_cache')
CACHE_MIDDLEWARE_KEY_PREFIX
u'********************'
TIME_ZONE
'UTC'
CORS_ORIGIN_ALLOW_ALL
True
FILE_UPLOAD_MAX_MEMORY_SIZE
2621440
EMAIL_BACKEND
'django.core.mail.backends.smtp.EmailBackend'
EMAIL_USE_SSL
False
TEMPLATE_CONTEXT_PROCESSORS
('django.contrib.auth.context_processors.auth',
 'django.core.context_processors.debug',
 'django.core.context_processors.i18n',
 'django.core.context_processors.media',
 'django.core.context_processors.static',
 'django.core.context_processors.tz',
 'django.contrib.messages.context_processors.messages')
MIGRATION_MODULES
{}
SESSION_COOKIE_AGE
1209600
SETTINGS_MODULE
'swapi.settings'
USE_ETAGS
True
LANGUAGES
(('af', 'Afrikaans'),
 ('ar', 'Arabic'),
 ('ast', 'Asturian'),
 ('az', 'Azerbaijani'),
 ('bg', 'Bulgarian'),
 ('be', 'Belarusian'),
 ('bn', 'Bengali'),
 ('br', 'Breton'),
 ('bs', 'Bosnian'),
 ('ca', 'Catalan'),
 ('cs', 'Czech'),
 ('cy', 'Welsh'),
 ('da', 'Danish'),
 ('de', 'German'),
 ('el', 'Greek'),
 ('en', 'English'),
 ('en-au', 'Australian English'),
 ('en-gb', 'British English'),
 ('eo', 'Esperanto'),
 ('es', 'Spanish'),
 ('es-ar', 'Argentinian Spanish'),
 ('es-mx', 'Mexican Spanish'),
 ('es-ni', 'Nicaraguan Spanish'),
 ('es-ve', 'Venezuelan Spanish'),
 ('et', 'Estonian'),
 ('eu', 'Basque'),
 ('fa', 'Persian'),
 ('fi', 'Finnish'),
 ('fr', 'French'),
 ('fy', 'Frisian'),
 ('ga', 'Irish'),
 ('gl', 'Galician'),
 ('he', 'Hebrew'),
 ('hi', 'Hindi'),
 ('hr', 'Croatian'),
 ('hu', 'Hungarian'),
 ('ia', 'Interlingua'),
 ('id', 'Indonesian'),
 ('io', 'Ido'),
 ('is', 'Icelandic'),
 ('it', 'Italian'),
 ('ja', 'Japanese'),
 ('ka', 'Georgian'),
 ('kk', 'Kazakh'),
 ('km', 'Khmer'),
 ('kn', 'Kannada'),
 ('ko', 'Korean'),
 ('lb', 'Luxembourgish'),
 ('lt', 'Lithuanian'),
 ('lv', 'Latvian'),
 ('mk', 'Macedonian'),
 ('ml', 'Malayalam'),
 ('mn', 'Mongolian'),
 ('mr', 'Marathi'),
 ('my', 'Burmese'),
 ('nb', 'Norwegian Bokmal'),
 ('ne', 'Nepali'),
 ('nl', 'Dutch'),
 ('nn', 'Norwegian Nynorsk'),
 ('os', 'Ossetic'),
 ('pa', 'Punjabi'),
 ('pl', 'Polish'),
 ('pt', 'Portuguese'),
 ('pt-br', 'Brazilian Portuguese'),
 ('ro', 'Romanian'),
 ('ru', 'Russian'),
 ('sk', 'Slovak'),
 ('sl', 'Slovenian'),
 ('sq', 'Albanian'),
 ('sr', 'Serbian'),
 ('sr-latn', 'Serbian Latin'),
 ('sv', 'Swedish'),
 ('sw', 'Swahili'),
 ('ta', 'Tamil'),
 ('te', 'Telugu'),
 ('th', 'Thai'),
 ('tr', 'Turkish'),
 ('tt', 'Tatar'),
 ('udm', 'Udmurt'),
 ('uk', 'Ukrainian'),
 ('ur', 'Urdu'),
 ('vi', 'Vietnamese'),
 ('zh-cn', 'Simplified Chinese'),
 ('zh-hans', 'Simplified Chinese'),
 ('zh-hant', 'Traditional Chinese'),
 ('zh-tw', 'Traditional Chinese'))
FILE_UPLOAD_TEMP_DIR
None
CSRF_COOKIE_AGE
31449600
STATIC_URL
'/static/'
EMAIL_PORT
25
USE_TZ
True
SHORT_DATETIME_FORMAT
'm/d/Y P'
STRIPE_PUBLISHABLE_KEY
u'********************'
PASSWORD_HASHERS
u'********************'
ABSOLUTE_URL_OVERRIDES
{}
LANGUAGE_COOKIE_PATH
'/'
CACHE_MIDDLEWARE_SECONDS
600
CSRF_COOKIE_HTTPONLY
False
DATETIME_INPUT_FORMATS
('%Y-%m-%d %H:%M:%S',
 '%Y-%m-%d %H:%M:%S.%f',
 '%Y-%m-%d %H:%M',
 '%Y-%m-%d',
 '%m/%d/%Y %H:%M:%S',
 '%m/%d/%Y %H:%M:%S.%f',
 '%m/%d/%Y %H:%M',
 '%m/%d/%Y',
 '%m/%d/%y %H:%M:%S',
 '%m/%d/%y %H:%M:%S.%f',
 '%m/%d/%y %H:%M',
 '%m/%d/%y')
KEEN_CELERY
False
EMAIL_HOST_USER
''
PROFANITIES_LIST
u'********************'

You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 500 page.